Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Convert Long File Name to Short File Name
OK, he're's the dilemma.
I have two lists of files I've imported. One has the file names/paths in long format that contains the path, name, size, last accessed, etc. The other list has them in DOS format wiht name, path size, last accessed and owner. I need to get the file name strings in the same format so I can compare the two and put the owners to the long file names. Is there some magical way to put these lists in Excel and somehow convert the long file paths/names to short file paths/names? It's the only way I can think of to get the files in sync. I thought of converting from short to long, but my problem is I may have three files with a short name of OGS101~1.TXT that have three different owners - how would I know what one is ~1, ~2 or ~3 when they are all the same size/file date? I found some scripts that take out the spaces, but I don't know how the short file name handles special characters and how it truncates to ~2, ~3, etc. Any help would be greatly appreciated! |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Convert Long File Name to Short File Name
Robert,
You can use the GetShortPathName API call, instead of trying to do it yourself. Declare Function GetShortPathName Lib "kernel32" Alias "GetShortPathNameA" (ByVal lpszLongPath As String, ByVal lpszShortPath As String, ByVal cchBuffer As Long) As Long See here for an example : http://vbnet.mvps.org/code/hooks/fil...dlghookadv.htm NickHK "Robert_L_Ross" wrote in message ... OK, he're's the dilemma. I have two lists of files I've imported. One has the file names/paths in long format that contains the path, name, size, last accessed, etc. The other list has them in DOS format wiht name, path size, last accessed and owner. I need to get the file name strings in the same format so I can compare the two and put the owners to the long file names. Is there some magical way to put these lists in Excel and somehow convert the long file paths/names to short file paths/names? It's the only way I can think of to get the files in sync. I thought of converting from short to long, but my problem is I may have three files with a short name of OGS101~1.TXT that have three different owners - how would I know what one is ~1, ~2 or ~3 when they are all the same size/file date? I found some scripts that take out the spaces, but I don't know how the short file name handles special characters and how it truncates to ~2, ~3, etc. Any help would be greatly appreciated! |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Convert Long File Name to Short File Name
Robert,
And here's an example cribbed from the API-Guide: Private Declare Function GetShortPathName Lib "kernel32" Alias "GetShortPathNameA" _ (ByVal lpszLongPath As String, _ ByVal lpszShortPath As String, _ ByVal lBuffer As Long) _ As Long Public Function GetShortPath(strFileName As String) As String 'KPD-Team 1999 'URL: http://www.allapi.net/ Dim lngRes As Long, strPath As String 'Create a buffer strPath = String$(165, 0) 'retrieve the short pathname lngRes = GetShortPathName(strFileName, strPath, 164) 'remove all unnecessary chr$(0)'s GetShortPath = Left$(strPath, lngRes) End Function NickHK "NickHK" wrote in message ... Robert, You can use the GetShortPathName API call, instead of trying to do it yourself. Declare Function GetShortPathName Lib "kernel32" Alias "GetShortPathNameA" (ByVal lpszLongPath As String, ByVal lpszShortPath As String, ByVal cchBuffer As Long) As Long See here for an example : http://vbnet.mvps.org/code/hooks/fil...dlghookadv.htm NickHK "Robert_L_Ross" wrote in message ... OK, he're's the dilemma. I have two lists of files I've imported. One has the file names/paths in long format that contains the path, name, size, last accessed, etc. The other list has them in DOS format wiht name, path size, last accessed and owner. I need to get the file name strings in the same format so I can compare the two and put the owners to the long file names. Is there some magical way to put these lists in Excel and somehow convert the long file paths/names to short file paths/names? It's the only way I can think of to get the files in sync. I thought of converting from short to long, but my problem is I may have three files with a short name of OGS101~1.TXT that have three different owners - how would I know what one is ~1, ~2 or ~3 when they are all the same size/file date? I found some scripts that take out the spaces, but I don't know how the short file name handles special characters and how it truncates to ~2, ~3, etc. Any help would be greatly appreciated! |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
http://CannotDeleteFile.net - Cannot Delete File? Try Long Path ToolFilename is too long? Computer Complaining Your Filename Is Too Long? TheLong Path Tool Can Help While most people can go about their businessblissfully unaware of the Windo | Excel Discussion (Misc queries) | |||
Why can't I convert Long date format to Short date | Excel Discussion (Misc queries) | |||
Can not open excel file by double clicking on short cut of file fo | Excel Discussion (Misc queries) | |||
I can't save long file names, only short one, how can I do this? | Excel Discussion (Misc queries) | |||
Short Cut for File | Excel Discussion (Misc queries) |