Главная страница
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
1-1139411099
Андрей Молчанов
2006-02-08 18:04
2006.03.12
Проблемы с масштабированием


8-1128691370
sco
2005-10-07 17:22
2006.03.12
Manifest


1-1139573384
DevBoy
2006-02-10 15:09
2006.03.12
Borland отказывается от дальнейшего развития Delphi!


11-1121599462
KVita
2005-07-17 15:24
2006.03.12
использование TObj


2-1140412396
Bratskiy
2006-02-20 08:13
2006.03.12
Выравнивание по ширине строки