vb代码注册控件(vb 注册表)[20240502更新]
admin 发布:2024-05-02 13:23 239
今天给各位分享vb代码注册控件的知识,其中也会对vb 注册表进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、vb中OCX控件注册
- 2、vb 控件如何注册啊
- 3、vb如何动态注册控件
- 4、vb中怎么添加控件?
- 5、如何注册vb控件?
- 6、怎样用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站长 原创,转载请注明出处和附带本文链接;
相关推荐
- 05-05网页图片位置代码(网页设计中图片的位置)[20240505更新]
- 05-05关于nat打洞代码的信息[20240505更新]
- 05-05实现导航界面代码(导航用户界面)[20240505更新]
- 05-05酷代码网站(很酷的代码)[20240505更新]
- 05-05数字货币最新开源代码(数字货币开源代码公布意味着什么)[20240505更新]
- 05-05jquery代码交互(jquery前后端交互)[20240505更新]
- 05-05dreamweaver压缩代码(dreamweaver格式化代码)[20240505更新]
- 05-05网页代码表(网页代码表格边框)[20240505更新]
- 05-05joomlaphp开发代码控制的简单介绍[20240505更新]
- 05-05asp代码(ASP代码转换器)[20240505更新]
取消回复欢迎 你 发表评论:
- 标签列表
- 最近发表
- 友情链接