Home
Manage Your Code
Snippet: Convert Path (VB.NET)
Title: Convert Path Language: VB.NET
Description: Converts long path names to short and short to long Views: 51
Author: Jeremy Badley Date Added: 2/25/2008
Copy Code  
1    Private Declare Auto Function GetShortPathName Lib "kernel32.dll" _
2	(ByVal strLongPath As String, ByVal objStringBuilder As System.Text.StringBuilder, _
3	ByVal intBufferSize As Integer) As Integer
4
5    Private Declare Auto Function GetLongPathName Lib "kernel32.dll" _
6	(ByVal strShortPath As String, ByVal objStringBuilder As System.Text.StringBuilder, _
7	ByVal intBufferSize As Integer) As Integer
8
9    Public Enum DirectoryPathLength
10        WindowsXP = 256
11    End Enum
12
13
14
15    Public Function GetShortPathName(ByVal strPath As String, Optional ByVal enumDirectoryPathLength As DirectoryPathLength = DirectoryPathLength.WindowsXP) As String
16
17        Dim strStringBuilder As New System.Text.StringBuilder(enumDirectoryPathLength)
18
19        Dim intNewStringLength As Integer
20
21        intNewStringLength = GetShortPathName(strPath, strStringBuilder, enumDirectoryPathLength)
22
23        Return strStringBuilder.ToString
24
25    End Function
26
27
28
29    Public Function GetLongPathName(ByVal strPath As String, Optional ByVal enumDirectoryPathLength As DirectoryPathLength = DirectoryPathLength.WindowsXP) As String
30
31        Dim strStringBuilder As New System.Text.StringBuilder(enumDirectoryPathLength)
32
33        Dim intNewStringLength As Integer
34
35        intNewStringLength = GetLongPathName(strPath, strStringBuilder, enumDirectoryPathLength)
36
37        Return strStringBuilder.ToString
38
39    End Function