Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.08.27;
Скачать: CL | DM;

Вниз

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;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.053 c
2-1275300108
[true]TRIx
2010-05-31 14:01
2010.08.27
как разместить MainMenu не в самом верху


3-1238562946
TheEd
2009-04-01 09:15
2010.08.27
как вычитать isert ы, произошедшие в триггере одной из таблиц


2-1273134658
noob_one
2010-05-06 12:30
2010.08.27
Какой функцией можно перевести "код" в #1050#1086#1076.


15-1267410604
Юрий
2010-03-01 05:30
2010.08.27
С днем рождения ! 1 марта 2010 понедельник


2-1271309315
Дмитрий. М
2010-04-15 09:28
2010.08.27
Транслитерация Киррилица->Латинница - что делаю не так?