当前位置:首页 > 代码 > 正文

vb代码注册控件(vb 注册表)[20240502更新]

admin 发布:2024-05-02 13:23 239


今天给各位分享vb代码注册控件的知识,其中也会对vb 注册表进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

vb中OCX控件注册

你要在安装包安装时注册OCX控件即可。

具体修改步骤为:

右键OCX文件属性-高级-勾选"注册类型库"

或者:

1. 将第三方dll文件放在安装文件目录中

2. 在Setup Factory的Action页面,On Post Install中,增加以下代码:

Shell.Execute("regsvr32", "open", SessionVar.Expand(" /s \"%ProgramFilesFolder%\\%ProductName%\\XXXX.dll\""));

/s选项表示后台slient安装,不会弹出提示框。%ProgramFilesFolder%这一串字符必须用(\")括起来。

如图所示:

vb 控件如何注册啊

“没有输入点”指没有 DllRegisterServer 这个函数,表示这个 DLL 不含 ActiveX 对象。如果是 ActiveX 控件(*.ocx)出现这个问题,那就很奇怪了。一般来说,OLE 库编译时会自动加上这个的。DLL 不含 DllRegisterServer 指这个 DLL 只是一些函数等等的集合(如 User32.dll),只能调用里面的函数、常量、类型等等。

RegSvr32 的注册原理是装入指定的模块,查找 DllRegisterServer 函数地址,如果找到就直接调用。然后目标库就自动注册了。直接用 DumpBin 看看就行了(需要安装 VC++ 6.0)

核心代码如下(API 声明全部省略):

hMod = LoadLibrary(FileName)

lpPA = GetProcAddress(hMod,

vb如何动态注册控件

以下在form中

Private Sub Form_Load()

'注册

If RegSvr32("c:\windows\system32\RICHTX32.OCX", False) = False Then

RegSvr32 App.Path "\RICHTX32.OCX", False

End If

'反注册

fun_UnRegServer = RegSvr32("c:\windows\system32\RICHTX32.OCX", True)

End Sub

------------------------------------------

以下在模块中

------------------------------------------

Private Declare Function LoadLibraryRegister Lib "kernel32" Alias "LoadLibraryA" (ByVal lpLibFileName As String) As Long

Private Declare Function CreateThreadForRegister Lib "kernel32" Alias "CreateThread" (lpThreadAttributes As Any, ByVal dwStackSize As Long, ByVal lpStartAddress As Long, ByVal lParameter As Long, ByVal dwCreationFlags As Long, lpThreadID As Long) As Long

Private Declare Function WaitForSingleObject Lib "kernel32" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long

Private Declare Function GetProcAddressRegister Lib "kernel32" Alias "GetProcAddress" (ByVal hModule As Long, ByVal lpProcName As String) As Long

Private Declare Function FreeLibraryRegister Lib "kernel32" Alias "FreeLibrary" (ByVal hLibModule As Long) As Long

Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long

Private Declare Function GetExitCodeThread Lib "kernel32" (ByVal hThread As Long, lpExitCode As Long) As Long

Private Declare Sub ExitThread Lib "kernel32" (ByVal dwExitCode As Long)

Public Function RegSvr32(ByVal filename As String, bUnReg As Boolean) As Boolean

Dim lLib As Long

Dim lProcAddress As Long

Dim lThreadID As Long

Dim lSuccess As Long

Dim lExitCode As Long

Dim lThread As Long

Dim bAns As Boolean

Dim sPurpose As String

sPurpose = IIf(bUnReg, "DllUnregisterServer", "DllRegisterServer")

If Dir(filename) = "" Then Exit Function

lLib = LoadLibraryRegister(filename)

'载入文件

If lLib = 0 Then Exit Function

lProcAddress = GetProcAddressRegister(lLib, sPurpose)

If lProcAddress = 0 Then

'不是ActiveX控件

FreeLibraryRegister lLib

Exit Function

Else

lThread = CreateThreadForRegister(ByVal 0, 0, ByVal lProcAddress, ByVal 0, 0, lThread)

If lThread Then

lSuccess = (WaitForSingleObject(lThread, 10000) = 0)

If Not lSuccess Then

Call GetExitCodeThread(lThread, lExitCode)

Call ExitThread(lExitCode)

bAns = False

FreeLibraryRegister lLib

Exit Function

Else

bAns = True

End If

CloseHandle lThread

FreeLibraryRegister lLib

Else

FreeLibraryRegister lLib

End If

End If

RegSvr32 = bAns

End Function

vb中怎么添加控件?

1、首先打开VB6.0,选择“标准EXE”。

2、然后按下键盘上的“Ctrl+T”来选择部件。

3、在其中找到“Microsoft Multimedia Control 6.0”选项。

4、点击左侧的小框框来选中。

5、点击对话框下部的确定按钮来完成添加。

6、此时,工具箱内就会出现小部件。

7、点击小部件,然后在窗体中画出小部件。

8、画完后,展现效果图。

9、关于MMcontrol的设置可以在右侧进行。

10、就这样,MMcontrol添加成功,可以为它书写代码了。

如何注册vb控件?

@echo off

color 0e

echo ---ocx控件安装注册程序---

echo

echo ┃请保证所有OCX文件在同一目录下! ┃

echo

echo. pause

copy richtx32.ocx %windir%\system32

copy richtx32.ocx %windir%\system

regsvr32 richtx32.ocx

echo

echo ┃所有OCX组件已经注册完毕,如果出现注册失败的提示。 ┃

echo ┃请手动将两个OCX文件拷贝到c:\windows\system32目录下,再运行。┃

echo

echo. pause

把上面的文件中的richtx32.ocx换成你想要的ocx控件 然后保存为bat文件放在和ocx控件同目录下

运行就可以自动注册了

如果以后你的程序目录变动还可能出现错误 哪还得重新注册 这样就可以每次都自动注册很方便的

怎样用VB代码注册控件

如果你要注册的控件是就在当前工程内使用的,那么是无法用代码来注册的哦,因为程序一启动就出错了。

如果是用代码来注册其他工程内使用的控件则是可以的:

Shell "regsvr32 " ocx文件的完整路径

关于vb代码注册控件和vb 注册表的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/982.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载