Главная страница
    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.44 MB
Время: 0.059 c
15-1272463188
Раиса
2010-04-28 17:59
2010.08.27
Биноминальные коэффициенты - не понимаю


2-1265893182
Б
2010-02-11 15:59
2010.08.27
Какие аудио форматы поддерживает MCI?


15-1272391343
GanibalLector
2010-04-27 22:02
2010.08.27
Обрыв сетевого подключения. Как?


15-1263990046
fford
2010-01-20 15:20
2010.08.27
что меньше нагружает сервер


2-1273643101
Виктор
2010-05-12 09:45
2010.08.27
Динамический отбор по дате в базе данных





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский