本文整理自网络,侵删。
系统长文件名与dos形式短文件名的相互转换
长文件名格式: C:\Program Files\Common Files\System\directdb.dll
DOS形式的短文件名 C:\PROGRA~1\COMMON~1\System\directdb.dll
有时编程时需要进行长短的转换
一、长文件名转短文件名,只需用一个函数就可以了
ExtractShortPathName('C:\Program Files\Common Files\System\directdb.dll')
二、短文件名转长文件名
首先定义函数
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(’C:\PROGRA~1\COMMON~1\System\directdb.dll‘)
相关阅读 >>
indy 中idhttp元件出现http status 302错误
更多相关阅读请进入《Delphi》频道 >>