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

Вниз

Папка "Автозаргузка" и данные из ярлыка.   Найти похожие ветки 

 
WestBronx   (2006-02-26 17:47) [0]

Привет мастера.
1. Подскажите, как узнать, где находится папка "Автозаргузка", запустившего программу пользователя?

2. Как получить путь к программе, из ярлыка? Т.Е. Есть ярлык, например "readme.txt.lnk", как из него получить путь на программу, на которую он ссылается? Эх, вроде правельно сформировал мысль, спасибо за внимание ;)


 
begin...end ©   (2006-02-26 18:21) [1]

1. API-функция SHGetSpecialFolderPath (параметр nFolder = CSIDL_STARTUP).
2. Интерфейс IShellLink, метод GetPath.


 
WestBronx   (2006-02-26 19:30) [2]

begin...end ©   (26.02.06 18:21) [1]
Это ShlObj?
Немогли бы, вы разжевать, как именно использовать?

1. Что в других параметрах указывать?
Я попробывал вот так:
appdn := BoolToStr(SHGetSpecialFolderPath(hwndOwner, "0", CSIDL_STARTUP, fCreate));
Неполучилось =(

2. Это вообще не понял =( Незнаю что такое интерфейс.


 
begin...end ©   (2006-02-26 19:57) [3]

> WestBronx   (26.02.06 19:30) [2]

1.

uses
 ShlObj;
var
 Path: array [0..MAX_PATH] of Char;
begin
 if SHGetSpecialFolderPath(0, Path, CSIDL_STARTUP, False) then
   ShowMessage(Path)
end


2.

uses
 ShlObj, ComObj, ActiveX;
var
 Unknown: IUnknown;
 ShellLink: IShellLink;
 PersistFile: IPersistFile;
 FindData: TWin32FindData;
 FilePath: array [0..MAX_PATH] of Char;
begin
 Unknown := CreateComObject(CLSID_ShellLink);
 ShellLink := Unknown as IShellLink;
 PersistFile := Unknown as IPersistFile;
 if PersistFile.Load("C:\Ярлык.lnk", STGM_READ) = S_OK then
   if ShellLink.GetPath(FilePath, SizeOf(FilePath), FindData, 0) = NOERROR then
     ShowMessage(FilePath)
end


 
WestBronx   (2006-02-26 20:21) [4]

begin...end ©   (26.02.06 19:57) [3]
Большое спасибо.



Страницы: 1 вся ветка

Текущий архив: 2006.03.12;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.048 c
8-1128784676
beglec
2005-10-08 19:17
2006.03.12
Как сделать TImage полупрозрачным?


11-1121117429
Dodfr
2005-07-12 01:30
2006.03.12
Could not compile KOL 2.10


15-1140442412
7BB
2006-02-20 16:33
2006.03.12
Читал недавно что Борланд остановил работы над Дельфи и C++!


2-1140895416
49 Cent
2006-02-25 22:23
2006.03.12
Как программно определить текущий месяц?


15-1140432721
kaZaNoVa
2006-02-20 13:52
2006.03.12
Алгоритм ограничения числа запусков программы/времени работы