Option Explicit 
Private Declare Function GetFullPathName Lib "kernel32" Alias "GetFullPathNameA" (ByVal lpFileName As String, ByVal nBufferLength As Long, ByVal lpBuffer As String, ByVal lpFilePart As String) As Long Private Sub Command1_Click() Dim Buffer As String, Ret As Long 
'create a buffer 
Buffer = Space(255) 
'copy the current directory to the buffer and append 'myfile.ext' 
Ret = GetFullPathName("jj.txt", 255, Buffer, "") 
'remove the unnecessary chr$(0)'s 
Buffer = Left(Buffer, Ret) 
'show the result 
MsgBox Buffer 
End Sub 
为什么获得的路径总是应用程序所在的路径,而不是我的"jj.txt"所在的路径?谢谢!

解决方案 »

  1.   

    Option Explicit
    Private Declare Function GetFullPathName Lib "kernel32" Alias "GetFullPathNameA" (ByVal lpFileName As String, ByVal nBufferLength As Long, ByVal lpBuffer As String, ByVal lpFilePart As String) As LongPrivate Sub Command1_Click()
        'Set current directory to C:\Windows\Media
        Dim x As Long
        ChDir "\Windows\Media"
        'Append the filename ding.wav
        Dim buffer As String * 255
        x = GetFullPathName("ding.wav", 255, buffer, "")
        MsgBox Left(buffer, x) 'should be C:\Windows\Media\ding.wavEnd Sub