当前位置:编程学习 > VB >>

用VB写的程序,如果所需的DLL文件不存在,则释放出一个DLL文件,这个功能怎么实现?

如题 --------------------编程问答-------------------- 你制作安装包的时候直接打包这个dll就可以了 --------------------编程问答--------------------  
'┏〓〓〓〓〓〓〓〓〓 SaveRes,start 〓〓〓〓〓〓〓〓〓┓
Function SaveRes(ResName, ByVal File1 As String, Optional Fugai As Boolean, Optional ResTypeName As String = "CUSTOM") As Boolean
'保存释放VB资源文件,参数:ResName,资源的标识号,默认是101,102依次往上加;ResTypeName,资源的类型,默认是CUSTOM
   On Error GoTo Err
       SaveRes = True
       Dim bytDbt()     As Byte
       Dim intT     As Integer
       If Dir(File1) <> "" Then
           If Fugai Then
               Kill File1
           Else
               Exit Function
           End If
       End If
       bytDbt = LoadResData(ResName, ResTypeName)
       intT = FreeFile
       Open File1 For Binary As intT
           Put intT, , bytDbt
       Close intT
   
   Exit Function
       SaveRes = False
Err:
   MsgBox Err.Description
End Function
'┗〓〓〓〓〓〓〓〓〓  SaveRes,end  〓〓〓〓〓〓〓〓〓┛

Private Sub Command1_Click()
MsgBox SaveRes(101, App.Path & "\1.dll")
End Sub
--------------------编程问答-------------------- 补充2楼
资源文件里要先加进dll,利用vb的资源编辑器 --------------------编程问答-------------------- 写好了加到这里,资源文件:
http://download.csdn.net/detail/xiaoyao961/4551130 --------------------编程问答-------------------- 这个不可以,VB6似乎不支持动态加载DLL, 可以采用变通的办法解决,例如启动检测程序,检测程序启动主程序、发现需要的DLL不存在,有检测程序释放DLL 即可  --------------------编程问答-------------------- 根本就是多余的想法么, 既然你都把这dll打包到程序了, 那么连检测都不用, 直接释放即可.
还有一种方法就是直接在打包的时候指定释放到安装位置. 反正这个安装位置总是新建的, 不可能有这个文件的.
等安装完, dll也就有了. 
这都是可以简化逻辑的思路. 
补充:VB ,  COM/DCOM/COM+
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,