|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Мар 27, 2004 21:04:09 Здравствуйте! Есть небольшой вопрос по Win32. Сейчас я вовсю работаю над идей инсталлера. Почти всё готово - сам движок уже описан, но осталось совсем немного - поместить ярлык в группу "Пуск". (Кстати, первую версию уже послал в "Исходники") Я вычитал, что функция SHGetSpecialFolderLocation может возвратить значение как: "Address that receives a pointer to an item identifier list specifying the folder's location relative to the root of the name space (the desktop)." Но возвращается что-то не то... Может быть приведёте уже готовый пример получения пути к папке "Пуск" в любом Windows? Буду очень благодарен! 1990 |
|
|
Дата: Мар 27, 2004 22:35:27 · Поправил: NEOx Качни исходники NSIS и там посмотри. Или попробуй читать от сюда: Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders Параметр: Common Desktop ЗЫ. Я точно не уверен, но вроде правильно. |
|
|
Дата: Мар 27, 2004 22:38:50 Да, это работает под всеми осями. Ща глянул NSIS там так же сделанно. |
|
|
Дата: Мар 27, 2004 22:51:34 Не, погоди, что-то я не то тебе дал. Сорри. Ща ещё погляжу... |
|
|
Дата: Мар 27, 2004 22:57:18 NEOx Жду. А NSIS исходники не кинешь, а то качать многовато последнюю версию, а в предыдущих я не знаю есть ли? |
|
|
Дата: Мар 27, 2004 23:01:07 Вот, попробуй читай отсюда: HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\S hell Folders Параметр: Start Menu |
|
|
Дата: Мар 27, 2004 23:04:46 1990 Жду. А NSIS исходники не кинешь, а то качать многовато последнюю версию, а в предыдущих я не знаю есть ли? И предыдущая не меньше. Я ща все исходники просмотрел, читается путь к папке "Пуск" там через реестр. SHGetSpecialFolderLocation там вообще не используется, так что должно работать. |
|
|
Дата: Мар 27, 2004 23:13:19 Вот кусок и ФАКа, тут тоже из реестра читается: Вопрос: Как узнать путь к каталогам Windows? Ответ: Следующий пример получает полный список каталогов по умолчанию (Favorites, Desktop, Programs, Fonts, SendTo, Start, Menu, Templates, Startup, Recent and NetHood) Windows и заносит его в Memo. Пример: uses Registry; procedure TForm1.Button1Click(Sender: TObject); var reg : TRegistry; ts : TStrings; i : integer; begin reg := TRegistry.Create; reg.RootKey := HKEY_CURRENT_USER; reg.LazyWrite := false; reg.OpenKey( 'Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders', false); ts := TStringList.Create; reg.GetValueNames(ts); for i := 0 to ts.Count -1 do begin Memo1.Lines.Add(ts.Strings[i] + ' = ' + reg.ReadString(ts.Strings[i])); end; ts.Free; reg.CloseKey; reg.free; end; Думаю так это всё и делается. |
|
|
Дата: Мар 28, 2004 15:25:49 Спасибо! |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.076 |