龙空技术网

VBA控件引用如何注册,这是一个很实用的工具,不要错过

江觅 629

前言:

此刻我们对“vc调用vb开发的dll”大概比较注意,咱们都想要知道一些“vc调用vb开发的dll”的相关知识。那么小编同时在网络上网罗了一些对于“vc调用vb开发的dll””的相关文章,希望咱们能喜欢,各位老铁们一起来了解一下吧!

DLL文件是应用文件的扩展,就是我们使用的一些应用程序附加的一些功能性文件,某些情况下是必不可少的一些文件。

特别是在VBA开发的时候,仅仅使用Excel提供的一些控件是不能很好地完成我们的需要的,那么就用扩展其它功能来丰富我们的应用操作。

本节介绍一下,如何注册DLL文件,当然了,并不仅仅适用于VBA控件注册,其它Windows系统控件注册都适用,本质上是一个很简单的小工具,只不过是在Excel平台下操作。

下图为操作界面

可以看到界面中并没有什么特别的内容,一个组合框,三个按钮。

组合框里自动搜索出电脑某一目录中的Dll文件,这个是自动进行,"选择目录"按钮可以打开文件对话自定义要搜索的文件夹。

注册和注销两个按钮分别进行DLL文件的注册和注销。

示例图中注册了一个名为:CheckDate.dll的文件。

接下来,看一下代码。

整个过程中重要代码只有两行,附加的一些代码就比较多了,其实没有意义,也有一些意义。

意义在于实现一些本来知道但操作人并不知道的一些过程。

下面这个过程就是获取某目录下的Dll文件过程:

Private Function getDllName(xPath As String)    Dim dArr(), di As Integer    Dim dllName As String    If VBA.Len(xPath) = 0 Then xPath = ThisWorkbook.Path       dllName = Dir(xPath & "\*.Dll", vbNormal)    If dllName = "" Then        ReDim dArr(0)        dArr(0) = ""        getDllName = dArr        Exit Function    Else        ReDim Preserve dArr(di)        dArr(di) = dllName    End If    Do While dllName <> dArr(0)        di = di + 1        dllName = Dir(ThisWorkbook.Path & "\*.Dll", vbNormal)        DoEvents        MsgBox dllName        Stop    Loop    getDllName = dArr    Erase dArrEnd Function

注册过程代码

'注册控件Sub login(dllName As String)   Shell "regsvr32 /s " & Chr(34) & ThisWorkbook.Path & "\" & dllName & Chr(34)End Sub

注销过程代码

'注销控件 注意/u 后面加空格Sub unlogin(dllName As String)   Shell "regsvr32 /s /u " & Chr(34) & ThisWorkbook.Path & "\" & dllName & Chr(34)End Sub

注册按钮代码

Private Sub CommandButton1_Click()Dim dllName As StringdllName = VBA.Trim(Me.ComboBox1.Value)If VBA.Len(dllName) = 0 Then Exit Sublogin dllNameMsgBox "注册成功!", vbInformation, "成功"End Sub

注销按钮代码

Private Sub CommandButton2_Click()Dim dllName As StringdllName = VBA.Trim(Me.ComboBox1.Value)If VBA.Len(dllName) = 0 Then Exit Subunlogin dllNameMsgBox "注销成功!", vbInformation, "成功"End Sub

总得来说,如果对Dll文件功能有一些了解,那么使用这个工具真的很省心,不信可以试试。

如果没有对控件引用有一定的了解,可能就不知所云了,不过没关系,当某一天突然学到这个地步的时候,会恍然大悟,原来如此。

人生就是从一个又一个未知到一个又一个明白的过程,当明白昨天的努力,只不是今天低头沉思后的微笑的时候,说明昨天的无知真的是一件很快乐的事情。

欢迎关注、收藏

---END---

标签: #vc调用vb开发的dll