Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

По стопам создания ярлыков... (*.lnk)


antonn ©   (2006-12-20 23:39:00) 

Создаю ярлык на рабочем столе, путь к нему смотрю так:
function SpecialDir(Spec:integer):string;
var Allocator: IMalloc;
 SpecialDir: PItemIdList;
 FBuf: array[0..MAX_PATH] of Char;
 PerDir: string;
begin
 if SHGetMalloc(Allocator) = NOERROR then
 begin
   SHGetSpecialFolderLocation(application.Handle,  spec , SpecialDir);
   SHGetPathFromIDList(SpecialDir, @FBuf[0]);
   Allocator.Free(SpecialDir);
   result:=string(FBuf);
 end;
end;


в качестве параметра подставляю нужную константу. Так вот появился вопрос, чем отличаются CSIDL_DESKTOPDIRECTORY и CSIDL_DESKTOP, они обе возвращают путь к рабочему столу?


antonn   (2006-12-21 00:20:00) [1]

и еще один вопрос сюда же - у пользователя всегда есть права на запись в CSIDL_DESKTOPDIRECTORY ?


antonn   (2006-12-20 23:59:00) [2]

так я не понял, какой из них правильней использовать? :)


tesseract   (2006-12-20 23:42:00) [3]

CSIDL_DESKTOP (0x0000)
The virtual folder representing the Windows desktop, the root of the namespace.

CSIDL_DESKTOPDIRECTORY (0x0010)
The file system directory used to physically store file objects on the desktop (not to be confused with the desktop folder itself). A typical path is C:\Documents and Settings\username\Desktop.

один - каталог, второй директория. Не факт что путь сохраниться в следующих версиях.


Наверх

Титульная страница Поиск, карта сайта Написать письмо