问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

请问vb 修改资源文件(即修改字符串表的内容)

发布网友 发布时间:2022-04-22 10:13

我来回答

4个回答

热心网友 时间:2023-10-10 07:51

'窗体上的控件如你所述,复制下面代码,根据实际情况修改注释部分,然后运行即可。

Option Explicit

'API声明

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 String, 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 Sub Cmd_Write_Click()

Dim hRes As Long, i As Integer

Dim myStr() As Byte, b() As Byte, FileName As String

FileName = "c:\1.exe" '这个就是你要生成的程序名

If Dir(FileName) <> "" Then Kill FileName
b = LoadResData(101, "CUSTOM") '本程序中Exe文件的资源ID号
i = FreeFile
Open FileName For Binary As #i
Put #i, , b
Close #i

myStr = StrConv(Text1.Text, vbFromUnicode)

hRes = BeginUpdateResource(FileName, False)

UpdateResource hRes, "CUSTOM", 101, 2052, myStr(0), Len(Text1.Text) 'Exe文件中要替换的资源ID号

EndUpdateResource hRes, False

MsgBox "文件替换并生成完毕!"
End Sub

热心网友 时间:2023-10-10 07:52

读写文件 另存为而已,不难。

不过小心替换错了, 就不行了,所以一定要找对地方才行吧。

open app.path & "/" &app.name for binary as #1

类似这样,吧,哈哈,谁帮你写个完整的

热心网友 时间:2023-10-10 07:52

Option Explicit

'API声明

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 String, 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 Sub Cmd_Write_Click()

Dim hRes As Long, i As Integer

Dim myStr() As Byte, b() As Byte, FileName As String

FileName = "c:\1.exe" '这个就是你要生成的程序名

If Dir(FileName) <> "" Then Kill FileName
b = LoadResData(101, "CUSTOM") '本程序中Exe文件的资源ID号
i = FreeFile
Open FileName For Binary As #i
Put #i, , b
Close #i

myStr = StrConv(Text1.Text, vbFromUnicode)

hRes = BeginUpdateResource(FileName, False)

UpdateResource hRes, "CUSTOM", 101, 2052, myStr(0), Len(Text1.Text) 'Exe文件中要替换的资源ID号

EndUpdateResource hRes, False

MsgBox "文件替换并生成完毕!"
End Sub

热心网友 时间:2023-10-10 07:53

1。 先把资源文件读取写到文件中
Dim strData() As Byte 'APP2是个Btye类型和数组
'读取资源
strData = LoadResData(strFileName, strExeType) '将自定义资源读入数组,注意,微软的帮助中对加载定义资源的说明有误,硬是资源标识为"CUSTOM"而非数字
'写入文件
iFile = FreeFile()
Open strTmpFile For Binary As #iFile
Put #iFile, , strData
Close #iFile

2. 用二进制打开上面建立的文件strTmpFile,找到123,替换成321。使用时,应注意文件的定位。

不知这是不是你想要的!GoodLuck。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
母爱作文(围绕一句话来写)900字 月经期能喝冰糖沙梨水? 石家庄火车站骗钱 五等分的新娘手游汉化安卓游戏官方下载 昆明看守所那个看守所好在 成建军行政拘留 青岛贵捷充换电设备成套服务有限公司怎么样? 合肥贵捷商贸有限责任公司怎么样? 南京贵捷物资有限公司怎么样? 上海贵捷电气有限公司产品用途 为什么wifi万能钥匙在华为手机上用不了? win10文件资源管理器怎么换图标 华为手机下载不了wifi万能钥匙华? 如何修改Windows 10文件资源管理器的菜单栏风格 属兔和属龙的相配吗?? 华为手机怎么找不到wifi钥匙 龙和兔配婚姻好不好 属兔的属相婚配宜忌 华为手机的wifi万能钥匙打不开怎么办? 如何修改手机里的文件 属兔和属龙龙的相配吗 如何修改手机里的文件? 属龙和兔的和什么属相最配?谢谢了,大神帮忙啊 如何修改Win10“文件资源管理器”目标指向 龙和兔的属相是否相克? win10怎么更改文件资源管理器图标 龙和兔在属相上相配吗 兔和龙属相是否相配? 龙兔两生肖相配吗 属兔和属龙的相配吗 属兔和属龙相配吗? 华为手机用什么软件替代了万能钥匙 华为nova7pro怎么用万能钥匙 C# 资源文件如何修改目录 vb中资源文件的修改 华为手机怎么用万能钥匙连接wifi 如何修改资源管理器&gt;文件夹选项&gt;文件类型的改动 华为手机的wifi万能钥匙打不开怎么回事 钢铁雄心2文件里怎么修改资源? 华为手机万能钥匙怎么没有清理缓存? 如何更改EXE,DLL文件中的图标资源 华为sp200,使用wifi万能钥匙下载哪个软件 华为手机怎么用wifi万能钥匙 - 百度 华为手机wifi万能钥匙限制连接次数 华为手机如何下载wifi万能钥匙 wifi万能钥匙在华为手机上为什么用不了 法律尽职调查的主要内容 什么叫尽职调查? 公司尽职调查内容有哪些? 尽职调查是什么意思啊? 法律尽职调查需要调查哪些方面?