VB代码:获取实例的完整镜像路径
VB中使用APP.PATH来获取实例路径,使用下面这段代码可以更多的功能。如果在DLL中使用,当dll被调用时,将返回DLL的路径。明晨网络原创,如果您有更好的实现方法请联系Mingchennet.com。
可以获取1.完整镜像路径,如 x:\project\app.exe或者x:\project\app.dll ,2.文件名 app.exe或者app.dll,3.所在目录,比如x:\project\ 。注意获取的目录以斜杠 “\” 结尾。
代码如下
-
'========================================
-
'声明作用:获取模块名称
-
'========================================
-
Private Declare Function GetModuleFileName Lib "kernel32" Alias "GetModuleFileNameA" (ByVal hModule As Long, ByVal lpFileName As String, ByVal nSize As Long) As Long
-
-
Public Enum ModNameType
-
FullName = 0
-
ShortName = 1
-
DirName = 2
-
End Enum
-
-
-
'========================================
-
'函数名称:FullAppName
-
'函数作用:获取模块全路径名称
-
'========================================
-
Function FullAppName(lType As ModNameType) As String
-
Dim modName As String * 256
-
Dim i As Long
-
Dim j As Long
-
i = GetModuleFileName(App.hInstance, modName, Len(modName))
-
FullAppName = Left$(modName, i)
-
j = Len(FullAppName)
-
-
'去除空字符
-
Do While Mid(FullAppName, j, 1) = vbNullChar
-
j = j - 1
-
Loop
-
FullAppName = Trim(Left(FullAppName, j))
-
-
'自身完整路径
-
If lType = 0 Then
-
FullAppName = FullAppName
-
'自身短文件名
-
ElseIf lType = 1 Then
-
FullAppName = Mid(FullAppName, InStrRev(FullAppName, "") + 1)
-
Else
-
'自身所在目录
-
FullAppName = Mid(FullAppName, 1, InStrRev(FullAppName, ""))
-
End If
-
-
End Function
文章源自:明晨网络,admin,《VB代码:获取实例的完整镜像路径》,http://www.mingchennet.com/tec/code/vb/25.htm
- 上一篇:VB下的BASE64编码类模块
- 下一篇:VB中使用API判断文件及目录的存在性