网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
02月24日漏签0天
vb吧 关注:156,050贴子:1,166,313
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 23回复贴,共1页
<<返回vb吧
>0< 加载中...

vb里用自定义资源把ocx植入到exe里,win7下运行异常

  • 只看楼主
  • 收藏

  • 回复
  • 小坏坏007
  • 数据库
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
all,大家有没有遇到这种情况:
我把程式用到的一个ocx文件用自定义资源方式植入到exe里,在form_load事件里用LoadResData函数释放出ocx文件,生成的exe在xp下运行正常,但在win7下却要很久(越半分钟)程式才能正常启动,选择这个exe,使用右键后,发现系统出现假死现象,也要半分钟右键才能出来,而右键其他没有用自定义资源的vb exe却正常。


  • 小坏坏007
  • 数据库
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
这是我自定义资源 form_load事件的源码:
Private Sub Form_Load()
Dim intDone As Integer
Call LoadRes
intDone = Shell("regsvr32 C:\Windows\System32\MSCOMM32.OCX /s", vbHide)
End Sub
Private Sub LoadRes()
If Dir("c:\windows\system32\MSCOMM32.DEP", vbNormal) = "" Then Call UnRes(101, "CUSTOM", "c:\windows\system32\MSCOMM32.DEP")
If Dir("c:\windows\system32\MSCOMM32.oca", vbNormal) = "" Then Call UnRes(102, "CUSTOM", "c:\windows\system32\MSCOMM32.oca")
If Dir("c:\windows\system32\MSCOMM32.OCX", vbNormal) = "" Then Call UnRes(103, "CUSTOM", "c:\windows\system32\MSCOMM32.OCX")
End Sub
Private Function UnRes(ByVal ResID As Integer, ByVal ResName As String, ByVal UnResPath As String) Dim Ocx() As Byte
Dim FileNum As Integer
FileNum = FreeFile
Ocx = LoadResData(ResID, ResName)
Open UnResPath For Binary As FileNum
Put FileNum, , Ocx()
Close FileNum
End Function


2026-02-24 02:35:18
广告
不感兴趣
开通SVIP免广告
  • 小坏坏007
  • 数据库
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
为什么win7下运行含有自定义资源的exe,右键,双击,系统都要出现假死呢??


  • JINZHOU002
  • 啥也不懂
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
关了杀毒软件


  • 小坏坏007
  • 数据库
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
人工置顶


  • 小坏坏007
  • 数据库
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼


  • 小坏坏007
  • 数据库
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
0.0怎么没人回答啊


  • 小坏坏007
  • 数据库
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼


2026-02-24 02:29:18
广告
不感兴趣
开通SVIP免广告
  • slz1234566
  • API
    12
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
以管理员运行


  • sunshinebean
  • 子类化
    13
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
其实一个ocx够了,并不需要释放到系统目录下的,就程序当前路径下,也不要用regsvr32去注册,用ocx自带的dllregisterserver方法注册


  • cbm666
  • 子类化
    13
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
依我个人实际的案例 也是我把脸丢到国外的那次 打死我发布软件 绝不再使用皮肤控件.
如果你的程序使用了皮肤控件 下面你就不用再看了 因为我就是死在这里....先把皮肤卸了别把责任往ocx注册问题上面推......
当年我外销5000张光盘配套超市用的计价秤 (超市进销存管理系统) 到南美州 这个国家使用的系统70%以上不是Win7 就是 Vista, 我这套系统用了约10几个的dll ocx 以及皮肤控件全部捆在资源文件里面 在线释放注册的.
在我被逼疯的那段时间里 不是天天打来的国际电话的抱怨就是Email不停的要求退货, 我确实无法理解,在老板面前我也抬不起头说不出口,因为确实无法解释.....单位测试的几套电脑全部都是XP系统 没有任何问题出现, 你说 我该咋办?后来我装了三套win7系统 竟然一套要死不活的串口数据乱套 一套一下就死机 另一套点击桌面快捷键 啥都没反应.....
最终老板同意退货,但只答应退光盘重新制作,电子秤不退货,因为光盘是配套赠送的,他们不同意 告到他们的度量衡管理局, 南美州衡器界龙头老大与贸易商以及计量局三人飞到杭州来找我老板谈判, 在我得知他们要来中国时,连续三天吃不下饭 更睡不着觉,连搞三天.....
我的妈。。。。。我终于找到问题了, 就因为我太骚包了,我用了Skin43这个皮肤控件,卸载皮肤控件后 打死再也找不到任何问题了, 再安装Vista系统一样完全没问题, 过了三天 这批老外到达我们公司了, 我不敢说是我使用的控件出问题, 我把责任推到Win7系统中国的版本与南美洲的版本产生UniCode的不兼容,唬外行的把他们这帮人骗过了.......我成功了 哈哈哈哈.......
结论:
Win7, Vista 与 VB 完全是兼容的没问题的(除了这个皮肤控件之外或许还有其它)



  • 小坏坏007
  • 数据库
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
虽然帖子已过去很久,但是觉得还是有义务再次更新一下。
真正原因是:之所以慢是因为公司电脑上安装了Symantec杀毒软件,由于程式开启时会在线释放文件,正是这个行为引起了该杀毒软件的注意,它会对该进程所在的目录进行扫描并自动监控,等扫描结束后才会让进程继续运行.
关闭杀毒软件后,程序运行一切正常.
关闭Symantec杀毒服务可以在命令行执行:SMC -STOP


  • 苏图雅鹿
  • API
    12
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
....
   --来来来,大家试试加特技!


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 23回复贴,共1页
<<返回vb吧
分享到:
©2026 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示