Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];
ВнизShortcut на рабочем столе. Проблема с функцией GetDir(0,sPath); Найти похожие ветки
← →
Fantasy (2010-04-05 19:23) [0]создает Inno Setup > Shortcut на рабочем столе
Проблема в том что фукция GetDir(0,sPath); возвращает адрес Shortcut-a а не адрес exe файла;
(Если создать Shortcut стандартной функцией windows то GetDir(0,sPath); правильно работает)
мастера подскажите как решить проблему?
← →
Knob (2010-04-06 10:22) [1]Должно работать.
uses ActiveX, ComObj, ShlObj
...
function NameFromLink(const lnk: string): string;
var
MyObject: IUnknown;
MySLink: IShellLink;
MyPFile: IPersistFile;
c: PChar;
pfd: _WIN32_FIND_DATAA;
begin
Result := "";
try
MyObject := CreateComObject(CLSID_ShellLink);
MySLink := MyObject as IShellLink;
MyPFile := MyObject as IPersistFile;
if MyPFile.Load(Pointer(WideString(lnk)), OF_READ) <> S_OK then
exit;
c := PChar(lnk);
MySLink.GetPath(c, MAX_PATH, pfd, 0);
Result := strpas(c);
except
end;
end;
← →
Fantasy (2010-04-13 18:13) [2]Спасибо Knob
← →
Loginov Dmitry © (2010-04-13 20:03) [3]
> как решить проблему?
Используйте ExtractFilePath(ParamStr(0)) вместо GetDir
← →
Anatoly Podgoretsky © (2010-04-13 20:18) [4]Это две разные по результатам функции.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.057 c