模块:EXE程序图标替换模块
使用说明:
将分隔号以下的所有E代码复制入易语言IDE,易语言会自动分类识别,只用复制粘贴即可(因为百度不允许上传*.e的文件,所以只能用这种方式给大家共享下了,抱歉)
注明:图标必须为windows规定的图标大小不能太大
QQ:xinbingnan@qq(如有问题请联系)
------------------------------------------------------------------------------------------------------------------------------------------------------
.版本 2
.程序集 程序集1
.子程序 替换图标, 逻辑型, 公开, 图标替换子程序
.参数 图标目录, 文本型
.参数 exe目录, 文本型
.局部变量 stID, ICONDIR
.局部变量 stIDE, ICONDIRENTRY
.局部变量 stGID, GRPICONDIR
.局部变量 hFile, 整数型
.局部变量 pIcon, 字节型, , "0"
.局部变量 pGrpIcon, 字节型, , "0"
.局部变量 nSize, 整数型
.局部变量 nGSize, 整数型
.局部变量 dwReserved, 整数型
.局部变量 hUpdate, 整数型
.
局部变量 ret, 整数型
hFile = CreateFile (图标目录, #GENERIC_READ, 0, 0, #OPEN_EXISTING, #FILE_ATTRIBUTE_NORMAL, 0)
.如果真 (hFile = #INVALID_HANDLE_VALUE)
' 暂停 ()
返回 (假)
.如果真结束
ret = ReadFile_ID (hFile, stID, 6, dwReserved, 0)
.如果真 (ret = 0)
' 暂停 ()
返回 (假)
.如果真结束
ret = ReadFile_IDE (hFile, stIDE, 16, dwReserved, 0)
nSize = stIDE.dwBytesInRes
重定义数组 (pIcon, 假, nSize - 1)
输出调试文本 (SetFilePointer (hFile, stIDE.dwImageOffset, 0, #FILE_BEGIN))
ret = ReadFile_p (hFile, pIcon [1], nSize, dwReserved, 0)
.如果真 (ret = 0)
' 暂停 ()
返回 (假)
.如果真结束
stGID.idType = 1
stGID.idCount = stID.idCount
stGID.idReserved = 0
CopyMemory (stGID.idEntries, stIDE, 12)
stGID.idEntries.nID = 0
nGSize = 20
重定义数组 (pGrpIcon, 假, nGSize - 1)
CopyMemory2 (pGrpIcon [1], stGID, nGSize)
hUpdate = BeginUpdateResource (exe目录, 1) ' 第二个参数为0不能替换易语言编译出程序的图标
ret = UpdateResource (hUpdate, #RT_GROUP_ICON, “129”, 2052, pGrpIcon [1], nGSize)
ret = UpdateResource (hUpdate, #RT_ICON, “129”, 2052, pIcon [1], nSize) ' 129为易语言图标ID
' 2052
EndUpdateResource (hUpdate, 0)
CloseHandle (hFile)
.如果真 (ret = 0)
返回 (假)
.如果真结束
返回 (真)
.版本 2
.数据类型 ICONDIRENTRY
.成员 bWidth, 字节型
.成员 bHeight, 字节型
.成员 bColorCount, 字节型
.成员 bReserved, 字节型
.
成员 wPlanes, 短整数型
.成员 wBitCount, 短整数型
.成员 dwBytesInRes, 整数型
.成员 dwImageOffset, 整数型
.数据类型 ICONDIR
.成员 idReserved, 短整数型
.成员 idType, 短整数型
.成员 idCount, 短整数型
.数据类型 ICONDIR_w
.成员 idReserved, 短整数型
.成员 idType, 短整数型
.
成员 idCount, 短整数型
.成员 nID, 短整数型
.数据类型 GRPICONDIRENTRY
.成员 bWidth, 字节型
.成员 bHeight, 字节型
.成员 bColorCount, 字节型
.成员 bReserved, 字节型
.成员 wPlanes, 短整数型
.成员 wBitCount, 短整数型
.成员 dwBytesInRes, 整数型
.成员 nID, 短整数型
.
数据类型 GRPICONDIR
.成员 idReserved, 短整数型
.成员 idType, 短整数型
.成员 idCount, 短整数型
.成员 idEntries, GRPICONDIRENTRY
.版本 2
.DLL命令 CreateFile, 整数型, "kernel32", "CreateFileA"
.参数 lpFileName, 文本型
.参数 dwDesiredAccess, 整数型
.参数 dwShareMode, 整数型
.参数 lpSecurityAttributes, 整数型
.
参数 dwCreationDisposition, 整数型
.参数 dwFlagsAndAttributes, 整数型
.参数 hTemplateFile, 整数型
.DLL命令 ReadFile_ID, 整数型, "kernel32", "ReadFile"
.参数 hFile, 整数型
.参数 lpBuffer, ICONDIR, 传址
.参数 nNumberOfBytesToRead, 整数型
.参数 lpNumberOfBytesRead, 整数型, 传址
.参数 lpOverlapped, 整数型
.DLL命令 ReadFile_IDE, 整数型, "kernel32", "ReadFile"
.参数 hFile, 整数型
.
参数 lpBuffer, ICONDIRENTRY, 传址
.参数 nNumberOfBytesToRead, 整数型
.参数 lpNumberOfBytesRead, 整数型, 传址
.参数 lpOverlapped, 整数型
.DLL命令 ReadFile_p, 整数型, "kernel32", "ReadFile"
.参数 hFile, 整数型
.参数 lpBuffer, 字节型, 传址
.参数 nNumberOfBytesToRead, 整数型
.参数 lpNumberOfBytesRead, 整数型, 传址
.参数 lpOverlapped, 整数型
.DLL命令 SetFilePointer, 整数型, "kernel32"
.
参数 hFile, 整数型
.参数 lDistanceToMove, 整数型
.参数 lpDistanceToMoveHigh, 整数型, 传址
.参数 dwMoveMethod, 整数型
.DLL命令 BeginUpdateResource, 整数型, "kernel32", "BeginUpdateResourceA"
.参数 pFileName, 文本型
.参数 bDeleteExistingResources, 整数型
.DLL命令 UpdateResource, 整数型, "kernel32", "UpdateResourceA"
.参数 hUpdate, 整数型
.参数 lpType, 整数型
.参数 lpName, 文本型
.
参数 wLanguage, 整数型
.参数 lpData, 字节型, 传址
.参数 cbData, 整数型
.DLL命令 UpdateResource_, 整数型, "kernel32", "UpdateResourceA"
.参数 hUpdate, 整数型
.参数 lpType, 整数型
.参数 lpName, 文本型
.参数 wLanguage, 整数型
易语言轰炸机源码最新.参数 lpData, 字节型, 传址
.参数 cbData, 整数型
.DLL命令 EndUpdateResource, 整数型, "kernel32", "EndUpdateResourceA"
.
参数 hUpdate, 整数型
.参数 fDiscard, 整数型
.DLL命令 CloseHandle, 整数型, "kernel32"
.参数 hObject, 整数型
.DLL命令 CopyMemory, , "kernel32", "RtlMoveMemory"
.参数 Destination, GRPICONDIRENTRY, 传址
.参数 Source, I
CONDIRENTRY, 传址
.参数 Length, 整数型
.DLL命令 CopyMemory2, , "kernel32", "RtlMoveMemory"
.参数 Destination, 字节型, 传址
.
参数 Source, GRPICONDIR, 传址
.参数 Length, 整数型
.DLL命令 GetLastError, 整数型, "kernel32"
.版本 2
.常量 INVALID_HANDLE_VALUE, "-1"
.常量 GENERIC_READ, "-2147483648"
.常量 FILE_ATTRIBUTE_NORMAL, "128"
.常量 FILE_BEGIN, "0"
.常量 OPEN_EXISTING, "3"
.常量 RT_ICON, "3"
.常量 DIFFERENCE, "11"
.
常量 RT_GROUP_ICON, "14"
.常量 SUBLANG_SYS_DEFAULT, "2"
.常量 LANG_CHINESE, "4"
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论