解决发布VB程序时携带大量ocx、dll文件的问题
ldc 2009-2-16软件综合
  有时一个使用了复杂控件的VB程序运行需要一些普通WindowsXP没有的ocx或者dll,在发布程序时往往需要将这些文件和exe文件一起打包,让一些程序看起来很不清爽,可不可以让我们的程序都只有一个exe文件没有其它的东西呢?
  其实VB程序可以包含各种资源文件,这就为创建一个只有exe文件的程序提供了可能。但当我尝试将ocx、dll以资源文件的形式包含在exe文件中,当程序运行的时候尝试释放时又遇到一个问题,程序加载窗体时因为没找到支持文件而出错中断,没等到释放文件就崩溃了。为了解决这个问题,我们需要在加载窗体之前执行一个main过程,释放ocx、dll等文件。
以我写的UDPFighter为例,本程序需要一个XXXXXXXXXXXX和一个XXXXXXXXXXXX,将这两个文件添加为资源文件。
1.JPG
创建一个标准模块,并在其中写一个main过程。代码如下:
'UnRes和TeShuML为自己写的函数,详见源文件
Sub main()
If Dir(TeShuML(37) & "\XXXXXXXXXXXX") = "" Then
    Call UnRes(101, "CUSTOM", TeShuML(37) & "\XXXXXXXXXXXX")   '释放文件
  Sleep 500
End If
If Dir(TeShuML(37) & "\XXXXXXXXXXXX") = "" Then
    Call UnRes(102, "CUSTOM", TeShuML(37) & "\XXXXXXXXXXXX")   '释放文件
  Sleep 500
End If
XXXXXXXXXX   '加载并显示窗体
End Sub
将启动对像设为Sub main()
2.JPG
编译程序后就可以实现仅用一个exe文件了。
+738  科创币    chiataimakro   2009-02-16    极富意义
来自:计算机科学 / 软件综合
 
ldc 作者
12年7个月前
1楼
源文件

attachment icon 网络攻击器_KC.rar 1021.00KB RAR 40次下载
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
csakura
12年7个月前
2楼
就是把引用的DLL放到资源里。。。

不过我觉得这样做更好。
把资源压缩一下,然后运行的时候解压出来。
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
fw。
12年7个月前
3楼
RLPack=LS+LZ
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
noname剑人
12年2个月前
4楼
引用第3楼fw。于2009-02-21 21:13发表的  :
RLPack=LS+LZ

好像真有RLPACK...
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论

想参与大家的讨论?现在就 登录 或者 注册

所属专业
上级专业
同级专业
ldc
学者 机友 笔友
文章
75
回复
769
学术分
34
2005/10/01注册,3 天前活动
暂无简介
%7B%22isDisplay%22%3Atrue%7D

仅供内部学术交流或培训使用,请先保存到本地。本内容不代表科创观点,未经原作者同意,请勿转载。

插入资源
全部
图片
视频
音频
附件
全部
未使用
已使用
正在上传
空空如也~
上传中..{{f.progress}}%
处理中..
上传失败,点击重试
等待中...
{{f.name}}
空空如也~
(视频){{r.oname}}
{{selectedResourcesId.indexOf(r.rid) + 1}}
处理中..
处理失败
插入表情
我的表情
共享表情
Emoji
上传
注意事项
最大尺寸100px,超过会被压缩。为保证效果,建议上传前自行处理。
建议上传自己DIY的表情,严禁上传侵权内容。
点击重试等待上传{{s.progress}}%处理中...已上传
空空如也~
草稿箱
加载中...
此处只插入正文,如果要使用草稿中的其余内容,请点击继续创作。
{{fromNow(d.toc)}}
{{getDraftInfo(d)}}
标题:{{d.t}}
内容:{{d.c}}
继续创作
删除插入插入
{{forum.displayName}}
{{forum.countThreads}}
篇文章,
{{forum.countPosts}}
条回复
{{forum.description || "暂无简介"}}
ID: {{user.uid}}
学术分隐藏
{{submitted?"":"投诉或举报"}}
请选择违规类型:
{{reason.description}}
支持的图片格式:jpg, jpeg, png
插入公式
分享回复:{{shareId}}
加载中...
评论控制
加载中...
文号:{{pid}}
加载中...
详情
详情
推送到专栏从专栏移除
设为匿名取消匿名
查看作者
回复
只看作者
加入收藏取消收藏
加入关注取消关注
折叠回复
置顶取消置顶
评学术分
鼓励
设为精选取消精选
建议修改
编辑
通过审核
评论控制
退修或删除
历史版本
违规记录
投诉或举报
加入黑名单移除黑名单
查看IP
{{format('YYYY/MM/DD HH:mm:ss', toc)}}
下载资料
{{fileName}}
大小:{{size}}
下载当前附件将花费 {{costMessage}}
{{description}}
你当前剩余 {{holdMessage}}
{{fileName}}
大小:{{size}}
当前附件免费。
你已购买过此附件,下载当前附件不需要花费积分。
加载中...
{{errorInfo}}
附件已丢失
当前账号的附件下载数量限制如下:
时段 个数
{{f.startingTime}}点 - {{f.endTime}}点 {{f.fileCount}}