VB6.0资源文件释放问题! 30

我用VB6.0释放文件EXE.SCR.CMD文件代码如下Dimtemp()AsBytetemp=LoadResData(101,"CUSTOM")Open"C:\WIND... 我用VB6.0释放文件EXE.SCR.CMD文件 代码如下
Dim temp() As Byte

temp = LoadResData(101, "CUSTOM")
Open "C:\WINDOWS\temp\101.exe" For Binary As #1
Put #1, 1, temp()
Close #1

temp = LoadResData(102, "CUSTOM")
Open "C:\WINDOWS\system32\102.scr" For Binary As #1
Put #2, 1, temp()
Close #2

temp = LoadResData(103, "CUSTOM")
Open "C:\WINDOWS\system32\103.exe" For Binary As #1
Put #3, 1, temp()
Close #3

运行时候就提示 错误的文件名或号码:Put #2, 1, temp()这个错误了吗?
资源文件里102是SCR文件
展开
 我来答
c20090218
2010-08-17 · TA获得超过255个赞
知道答主
回答量:161
采纳率:0%
帮助的人:195万
展开全部
'文件号冲突了。
'你关闭了1号句柄(VB 打开文件之后的“文件号”其实就是句柄)却又使用1号句柄打开,系统就找不到了,就会报错。

Dim temp() As Byte

temp = LoadResData(101, "CUSTOM")
Open "C:\WINDOWS\temp\101.exe" For Binary As #1
Put #1, 1, temp()
Close #1

temp = LoadResData(102, "CUSTOM")
Open "C:\WINDOWS\system32\102.scr" For Binary As #2
Put #2, 1, temp()
Close #2

temp = LoadResData(103, "CUSTOM")
Open "C:\WINDOWS\system32\103.exe" For Binary As #3
Put #3, 1, temp()
Close #3

而且,我不建议你用这种方式来写文件,因为我试过,如果用 VB 资源编辑器载入再写出就会异常。这是针对“自定义类型(Custom)”而言,其他的格式没有问题。比如,EXE 无法运行(“XXX.EXE 不是有效的 32 位程序”)。如果真的要写文件,建议写好代码生成之后用 ResHacker 加进去。
tianqing20wen

2010-08-15 · TA获得超过2.4万个赞
知道大有可为答主
回答量:8226
采纳率:88%
帮助的人:5064万
展开全部
Dim temp() As Byte

temp = LoadResData(101, "CUSTOM")
Open "C:\WINDOWS\temp\101.exe" For Binary As #1
Put #1, 1, temp()
Close #1

temp = LoadResData(102, "CUSTOM")
Open "C:\WINDOWS\system32\102.scr" For Binary As #2
Put #2, 1, temp()
Close #2

temp = LoadResData(103, "CUSTOM")
Open "C:\WINDOWS\system32\103.exe" For Binary As #3
Put #3, 1, temp()
Close #3
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式