我們用delphi 編程的時(shí)候需要用到將獲到的的縮位的 dos 8.3 格試的路徑
如 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp
這樣的路徑轉(zhuǎn)換為完整的路徑 C:\Documents and Settings\Administrator\Local Settings\Temp
在VC中可以用到 API GetLongPathName 可惜在delphi 下面沒(méi)有封裝這函數(shù),我們自已來(lái)定義
function GetLongPathName(Src, Dest: PChar; cch:DWord): DWord; stdcall; external 'Kernel32.dll' name 'GetLongPathNameA';
function ShortPathToLongPath(const AShortName: string): string;
var
sz: array[0..MAX_PATH - 1] of Char;
begin
FillChar(sz, SizeOf(sz), 0);
GetLongPathName(PChar(AShortName), sz, MAX_PATH);
Result := string(sz);
end;
可以用 ShortPathToLongPath('路徑' ) 來(lái)調(diào)用