Да вроде бы работает Ваша функция :
Код:
function ShortFileName(const FileName: string): string;
var
aTmp: array[0..255] of Char;
begin
if not FileExists(FileName) then begin
Result:='';
end
else begin
if GetShortPathName(PChar(FileName), aTmp, Sizeof(aTmp)) = 0 then begin
Result:= FileName;
end
else begin
Result:= StrPas (aTmp);
end;
end;
end;
На входе :
D:\Мои документы\Санитарные_правила_и_нормы\СанПиН-2_2_4_1294-03.2003-06-15\СанПиН-2_2_4_1294-03-20030615.htm
На выходе :
D:\МОИДОК~1\САНИТА~1\САНПИН~2.200\САНПИН~1.HTM