怎么通过VB程序直接给OCX控件注册
|
admin
2014年3月26日 1:7
本文热度 5671
|
用VB作了个程序,里面还有ocx控件,发给人家时,控件不能使用(没有注册),所以要在程序启动时为ocx控件自动注册,应该加什么样的代码?
PS:批处理的我会,我也不要,我只要程序自动给控件注册的代码!~
该文章在 2014/3/26 1:07:58 编辑过
| |
全部评论2 |
|
admin
2014年3月26日 1:8
Private Sub Form_Load()
Shell "cmd /c regsvr32 注册的OCX" , VbHide
End Sub 该评论在 2014/3/26 1:08:07 编辑过
|
|
admin
2014年3月26日 1:9
我做了一个软件,但是不想使用打包软件制作成安装包,现在都在流行绿色嘛!
我把软件的EXE文件和可用到的控件压缩到一个压缩包,在运行EXE文件的时候,自动把文件夹里的控件复制到系统文件夹里的 system32 里面,并注册,这样EXE文件就能正常使用了。但是现在问题来了:
第一:怎么样获取当前使用系统(有些人的机子装的系统不止一个)的 system32 文件夹!
第二:我在测试复制控件的时候,有些控件竟然复制不了,改成MOVE,结果 system32 文件夹里面已经有这个控件,也移动不了,我想让他能够 复制/移动 过去!
第三:假如上面的2步都已经完成,那么软件每次运行,控件都要重新复制一次,并且重新注册一次,怎么样检测某些控件是否已经注册,如果注册了则检查控件的版本号是否相同,如果没有注册或版本号不同,那么再重新复制并注册!
第四:这个问题估计在每一步都可能发生,就是在执行某些动作的时候会出现一些提示或者错误提示,怎么样避免掉,或者自动的点确定呢? |
作者:老大徒伤悲 发表时间:2007-2-3 14:14:00 |
第1楼
1、当前操作系统就是%system%
3、查找该文件,使用错误收集。在错误处理里移动。
4、使用3就不存在了
|
|
第2楼
能给出一个例子的代码吗?
例如压缩包是在不在系统盘的任意一个盘,里面有一个EXE和一个控件!谢谢 |
|
作者:老大徒伤悲 发表时间:2007-2-3 19:46:00 |
第3楼
压缩包是在不在系统盘的任意一个盘
这句话的意思,我看不动。
%system%使用在路径的开头,就相当于普通的c:\windows
所以,不论当前的系统的什么盘,在什么目录下,都直接指到windows文件夹里了。
|
|
第4楼
恩,谢谢,不过还有一个问题哈!
是不是有些控件是只读的,为什么在复制的时候会出现错误呢,有些控件就是复制不过去!
压缩包是在不在系统盘的任意一个盘 意思就是 别人在使用软件的时候可以把下载的压缩包放到任意的一个盘.
还有你看这句有什么问题:
shell regsvr32,%system% & "\system32" & abc.ocx | | 该评论在 2014/3/26 1:09:45 编辑过
|