[ FranjoZG @ 26.02.2020. 14:38 ] @
D2007
ExtractShortPathName na mom kompu radi ispravno. Program koji se vrti na serveru, pokrenem ga preko RDP-a ne vraća ispravnu vrijednost.

Recimo da je exe: C:\Programi\Moji programi\Program.exe
ExtrachShortPathName(Application.ExeName) na serveru mi vrati: C:\Programi\Moji programi\ umjesto C:\Programi\Moji~1\

problem je što putanju prosljeđujem drugom programu kao parametar (tuđi program) pa mi ne prolazi dugi path.
[ savkic @ 26.02.2020. 19:31 ] @
Nekad windows i ne generise short name (ima neko registri podesavanja za to) a nekad ta funkcija ne radi dobro, alternativa je da koristis FindFirst/Next File pozive i da short path sam konstruises.
[ salvaric @ 27.02.2020. 06:08 ] @
Ne znam dal će ti pomoći, al pokušaj da taj parametar staviš pod navodne znake, “C:\Programi\Moji programi\“ i tako ga proslediš drugom programu. Kod mene je radilo posao sa nekim dosovskim programom.
[ FranjoZG @ 27.02.2020. 08:27 ] @
Pokušao sam sa jednostruki i dvostrukim navodicima - ne prolazi.
Zna li netko kako "ručno" pretvoriti C:\Programi\Moji programi u C:\Programi\Moji~1\ ?
Nije problem skratiti "Moji programi" u "Moji", ali kako znati koji je redni broj ako ima više path-ova ili file-ova u C:\Programi
[ salvaric @ 27.02.2020. 08:57 ] @
http://delphi.cjcsoft.net/viewthread.php?tid=46564
[ tkaranovic @ 27.02.2020. 17:31 ] @
Verovatno nema kratko ime jer je NtfsDisable8dot3NameCreation 1 umesto 0 o cemu se moze citati:

https://docs.microsoft.com/en-...echnet.10)?redirectedfrom=MSDN

Kad se to promeni onda se moze kreirati fajl sa kratkim imenom.

Sa "dir /x" moze da se proveri da novi fajlovi imaju kratka imena.

Starim fajlovima/direvima se moze moze raditi kad se sa:
AdjustTokenPrivileges
setuej:
SeRestorePrivilege

Onda se i za fajlove i direve menja sa:

SetFileShortNameW

Mora i da se startuje program sa admin pravima (run as admin...)