当前位置: 首页 > news >正文

建设电商网站的总结报告慈溪网站制作

建设电商网站的总结报告,慈溪网站制作,设计网站做海报,wordpress网站+搬家当你给一家公司做技术支持的时候,需求各种各样的,其中今天遇到就是要修改某个程序的图标,代码实现如下。 // q1016058890 群 214016721 //注 意:这个方法貌似只对有些EXE文件有效,这不是万能的方法,此…

当你给一家公司做技术支持的时候,需求各种各样的,其中今天遇到就是要修改某个程序的图标,代码实现如下。

'// q1016058890  群 214016721
'//注    意:这个方法貌似只对有些EXE文件有效,这不是万能的方法,此方法只能做为参考所用
'//
'//函数说明:修改EXE图标
'//参    数:IconFile 图标文件 ExeFile 被修改的EXE文件
'//返 回 值: 成功为True,否则False
'//
Private Declare Function CreateFile Lib "kernel32" Alias "CreateFileA" (ByVal lpFileName As String, ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, lpSecurityAttributes As Any, ByVal dwCreationDisposition As Long, ByVal dwFlagsAndAttributes As Long, ByVal hTemplateFile As Long) As Long
Private Declare Function ReadFile Lib "kernel32" (ByVal hFile As Long, lpBuffer As Any, ByVal nNumberOfBytesToRead As Long, lpNumberOfBytesRead As Long, lpOverlapped As Any) As Long
Private Declare Function SetFilePointer Lib "kernel32" (ByVal hFile As Long, ByVal lDistanceToMove As Long, lpDistanceToMoveHigh As Long, ByVal dwMoveMethod As Long) As Long
Private Declare Function BeginUpdateResource Lib "kernel32" Alias "BeginUpdateResourceA" (ByVal pFileName As String, ByVal bDeleteExistingResources As Long) As Long
Private Declare Function UpdateResource Lib "kernel32" Alias "UpdateResourceA" (ByVal hUpdate As Long, ByVal lpType As Long, ByVal lpName As Long, ByVal wLanguage As Long, lpData As Any, ByVal cbData As Long) As Long
Private Declare Function EndUpdateResource Lib "kernel32" Alias "EndUpdateResourceA" (ByVal hUpdate As Long, ByVal fDiscard As Long) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
Private Declare Function GetLastError Lib "kernel32" () As Long
Private Const INVALID_HANDLE_VALUE = -1
Private Const GENERIC_READ = &H80000000
Private Const FILE_ATTRIBUTE_NORMAL = &H80
Private Const FILE_BEGIN = 0
Private Const OPEN_EXISTING = 3
Private Const RT_ICON = 3&
Private Const DIFFERENCE As Long = 11
Private Const RT_GROUP_ICON As Long = (RT_ICON + DIFFERENCE)

Private Type ICONDIRENTRY
    bWidth As Byte
    bHeight As Byte
    bColorCount As Byte
    bReserved As Byte
    wPlanes As Integer
    wBitCount As Integer
    dwBytesInRes As Long
    dwImageOffset As Long
End Type
Private Type ICONDIR
    idReserved As Integer
    idType As Integer
    idCount As Integer
    'idEntries As ICONDIRENTRY
End Type
Private Type GRPICONDIRENTRY
    bWidth As Byte
    bHeight As Byte
    bColorCount As Byte
    bReserved As Byte
    wPlanes As Integer
    wBitCount As Integer
    dwBytesInRes As Long
    nID As Integer
End Type
Private Type GRPICONDIR
    idReserved As Integer
    idType As Integer
    idCount As Integer
    idEntries As GRPICONDIRENTRY
End Type

Private Function ChangeExeIcon(ByVal IconFile As String, ByVal ExeFile As String) As Boolean
    On Error GoTo cw
    
    Dim stID As ICONDIR
    Dim stIDE As ICONDIRENTRY
    Dim stGID As GRPICONDIR
    
    Dim hFile As Long
    Dim pIcon() As Byte, pGrpIcon() As Byte
    Dim nSize As Long, nGSize As Long
    Dim dwReserved As Long
    Dim hUpdate As Long
    Dim ret As Long
    
    hFile = CreateFile(IconFile, GENERIC_READ, 0, ByVal 0&, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0)
    If hFile = INVALID_HANDLE_VALUE Then Exit Function
    ret = ReadFile(hFile, stID, Len(stID), dwReserved, ByVal 0&)
    If ret = 0 Then GoTo cw
    
    ret = ReadFile(hFile, stIDE, Len(stIDE), dwReserved, ByVal 0&)
    nSize = stIDE.dwBytesInRes
    ReDim pIcon(nSize - 1)
    SetFilePointer hFile, stIDE.dwImageOffset, ByVal 0&, FILE_BEGIN
    ret = ReadFile(hFile, pIcon(0), nSize, dwReserved, ByVal 0&)
    If ret = 0 Then GoTo cw
    
    With stGID
        .idType = 1
        .idCount = stID.idCount
        .idReserved = 0
        CopyMemory stGID.idEntries, stIDE, 12
        .idEntries.nID = 0
    End With
    
    nGSize = Len(stGID)
    ReDim pGrpIcon(nGSize - 1)
    CopyMemory pGrpIcon(0), stGID, nGSize
    
    hUpdate = BeginUpdateResource(ExeFile, False)
    ret = UpdateResource(hUpdate, RT_GROUP_ICON, 1, 0, pGrpIcon(0), nGSize)
    ret = UpdateResource(hUpdate, RT_ICON, 1, 0, pIcon(0), nSize)
    EndUpdateResource hUpdate, False
    If ret = 0 Then GoTo cw
    ChangeExeIcon = True
cw:
    CloseHandle hFile
End Function

Private Sub Command1_Click() '调用方法
    Dim a As Boolean
    a = ChangeExeIcon("c:/1.ico", "c:/1.exe")
    If a = True Then
        MsgBox "成功"
    Else
        MsgBox "失败"
    End If
End Sub
 

http://www.yayakq.cn/news/37155/

相关文章:

  • 上海网站建设 建站猫和女人做的电影网站
  • 自己电脑上做网站怎么使用源码网站 不稳定
  • 阆中 网站建设做课件的网站有哪些
  • 服务器网站托管wordpress+vps建站
  • 网站开发打开世界之窗默认内核加盟哪家装修公司好
  • 网站备案所需资料做网站软文怎么弄
  • 如何在百度中搜索到网站哈尔滨建设工程交易中心
  • 咸阳做网站开发公司哪家好学校门户网站建设管理办法
  • 福州网站制作外包手机微信网页版登录
  • 网站底部悬浮代码wordpress怎么绑域名
  • 域客式单页网站能申请域名吗计算机网络资源网站建设论文
  • html个人主页代码编写上海网站建设seodian
  • 公司网站是用什么软件做公众号运营工作内容
  • 潍坊网站制作保定公司电话2345浏览器网址
  • 东莞专业做淘宝网站网站如何制作 优帮云
  • 免费素材软件下载优化大师并安装
  • 中国城乡和住房建设部网站首页招标网站的服务费怎么做分录
  • 阿里云网站搭建滨海专业做网站的公司
  • 旅游网站建设的建议如何用ps做网站平面图
  • 提供医疗网站建设google的网站优化工具
  • 简单的网站开发模板永州网站建设求职简历
  • 爱站长地方汽车网站模板购买
  • 商城网站建设公司电话化工企业建网站
  • 专业网站建站费用徐州网站建设方案推广
  • 做卫生用品的网站带孩子做网站
  • asp网站建设技术方案焦作建设厅网站
  • 嘉兴网站建设方案优化网站死链排查
  • 网站如何做app梧州本地网站
  • 国内定机票网站建设一个网站的上线流程
  • 常州网站建设方案搜索引擎营销的优缺点