我昨天做了直接用VB里面的Active DLL 做了那东东要编释完后,放到其他机子上运行,要注册那个DLL后才能用,请问怎么做
使得VB做成的DLL也像
Private Declare Function OpenText Lib "ResultString.dll" (ByVal FileName As String) As String 这种引用法不用注册的
也就是说放到其他机子上,不用注册DLL文件,使程序就可以直接调用这DLL库
使得VB做成的DLL也像
Private Declare Function OpenText Lib "ResultString.dll" (ByVal FileName As String) As String 这种引用法不用注册的
也就是说放到其他机子上,不用注册DLL文件,使程序就可以直接调用这DLL库
解决方案 »
- 提示文件未找到
- 问一个SQL SERVER 2008安装时出现的问题
- 怎样使窗体从屏幕中央逐渐变大.
- 请问如何将wbemdisp.tlb正确打包
- 用wise installer 902來打包vb6+Crystal Reports8.5的程序,執行程序時出錯?
- 请问怎样才能获得路径下文件夹和文件的名称 及文件夹和文件的个数?
- VB数据库问题,请教各位大虾?
- 做程序能做到多大啊?不做程序干什么去呢?
- 请问:VC++,C#,Delphi,VB,Java这几种语言之间该怎样选择?
- 想问一下从前的贴子有没有打包下载的地方??谢谢!!!
- 一个关于excel在vb界面中显示的问题,十分紧急,在线等,大家帮帮忙,非常感谢!!
- 如何判断 MSHFLEXGRID 中哪些行被选中?
有一种法子,请问怎么打包
我听说用VB下的一个自带软件就可以将那个DLL与软件打包在一起形成安装程序,,请问那软件在VB的什么地方,我没找到
VB中创建可以输出函数的DLL
VB中创建的DLL只是COM组件,无法作为输出函数的DLL。今天从袁波哪里搞到一种可以创建输出函数的DLL的方法。
VB编译文件实际上采取了两次编译的方法,首先是调用c2.exe产生OBJ文件,然后调用Link.exe连接。如果在link的时候添加EXPORT选项,实际上是可以输出函数的。但是,在VB的工程选项中将这些屏蔽了。而且过分的是:VB在Build完成后会将OBJ文件删除,这样就无法通过Link来输出函数了。不过我找到一个比较龌鹾的变通的方法,就是先创建一个Exe工程,在Form_Load事件里面写下面的语句:
Private Sub Form_Load()
If (MsgBox("hehe", vbOKCancel) = vbOK) Then
Shell "link2.exe " & Command$
End If
End
End Sub然后编译为linktemp.exe,接下来将LINK.EXE改名为Link2.exe,将linktemp.exe改名为link.exe。这样在VB调用link.exe时会弹出对话框,处理就会中断。这时就可以有机会将OBJ文件拷贝出来了然后我创建了一个ActiveX DLL工程,在这个工程里面添加一个Module并创建一个Public函数mathadd:Public Function mathadd(ByVal a As Long, ByVal b As Long) As Long
mathadd = a + b
End FunctionBuilder这个工程,在Link的时候就会中断。然后把创建的Class1.obj、Module1.obj、Project1.obj备份出来。然后就可以调用Link2.exe连接OBJ到DLL了,我的连接代码是:link2.exe "e:\vbdll\Class1.obj" "e:\vbdll\Module1.obj" "e:\vbdll\Project1.obj" "E:\Program Files\Microsoft Visual Studio\VB98\VBAEXE6.LIB" /ENTRY:__vbaS /EXPORT:mathadd /OUT:"e:\vbdll\ProjectOK.dll" /BASE:0x11000000 /SUBSYSTEM:WINDOWS,4.0 /VERS注意里面的/ENTRY和/EXPORT开关,/EXPORT开关声明了输出函数mathadd。这样就大功告成了 :-D,可以被其他语言引入,例如在VB中,只需要:Private Declare Function mathadd Lib "e:\vbdll\ProjectOK.dll" (ByVal a As Long, ByVal b As Long) As Long就可以了。
--------------------------------------------------------------------------
外接程序--外接程序管理器--打包和展开向导。
根据提示来。。把那个DLL一块打包。。