1. 首页 > 区块百科  > ocx控件怎么注册(ocx控件是用来干什么的)

ocx控件怎么注册(ocx控件是用来干什么的)

ocx控件怎么注册

另外,这种方法有一个不足之处,那就是注册工作是在本程序之外由Regsvr32.exe程序来完成的,系统内不方便知道注册的结果,也不方便对注册过程弹出的对话框进行自定义和控制。这里附Regsvr32的参数说明:(感谢网友伍华聪的提醒)

既然可以在运行栏中输入“Regsvr32.exe路径”的方法来注册,那么,一定可以在C#程序中采用同样的方法来调用Regsvr32,以实现注册:

首先,大家都知道在Windows的“运行”中,输入“Regsvr32.exe路径”这样的方法来手动注册Dll控件(OCX),显示这种方法对于程序的自动化部署等带来极大的不便,因此,今天我们着重介绍如何用C#实现自动注册。

两种方法介绍完啦,可是好像还缺点什么?对了,那就是对Dll是否已经注册过了的判断。一般情况下,我们可以将对Dll控件的注册过程放在系统启动的过程中来完成,但是,总不能每次启动都注册一次吧?这样做显然不合理。那么,我们就来判断一下,当前Dll是否已经注册过,如果已注册过,就跳过注册过程。

ocx控件是用来干什么的

每一个Dll的注册都会在注册表里记录下有关它本身的资料,如注册路径,唯一ID等。我们这里就是利用它留下的唯一ID号来判断:

本文将为大家讲述DLL库自动注册的两种方法,包括调用Regsvr32方法等。希望通过本文能对大家有所帮助。

既然方法一不大实用,那么我们就来寻找一种真正实用的方法来达到我们的目的吧。研究Regsvr32.exe和Dll文件,我们会发现,其实每个需要注册的文件都包括一个DllRegisterServer()方法,Regsvr32.exe就是通过调用该方法来完成Dll的注册的。呵呵,知道了这个,我们就可以自己调用DllRegisterServer()来完成注册过程啦。

exe是32位系统下使用的DLL注册和反注册工具,使用它必须通过命令行的方式使用,格式是:

windows注册ocx文件

其中的“{7713F78A-44DE-42BA-A1F6-3FB0BD6CA63B}”就是该Dll的唯一ID啦,每一个Dll文件都会不一样的。但是,问题又来了,怎么样知道它的唯一ID呢?其实很简单,那就是“逆向思维”。我们可先注册这个Dll文件,然后到注册表的“HKEY_CLASSES_ROOT\CLSID”分支下“查找”Dll的名称或路径,就可以看到这个ID啦。简单我就不多说啦。

可以分析EXE、OCX、DLL安装过程中所需要的文件,下载后打开SRD.OCX,提示缺少msvbvm60.dll,从其它系统拷贝该文件到c:\windows\system32目录,重新执行注册,OK

安装vsproject组件过程中,提示无法注册srd.ocx,安装失败,找到visualproject安装目录,把srd.ocx拷贝到C盘根目录下尝试手工在运行中执行regsvr32c:\srd.ocx进行注册组件,提示“loadLibrary(“c:\srd.ocx”)failed-找不到指定模块”

右键刚刚找到的_DActiveX_OCX,添加一个名叫AddFun方法,还有两个参数a1,a2,参数类型为LONG型,其余属性默认

标签: #控件 #用来 #ocx #注册 #干什么