![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Автозагрузка проги в Windows XP sp3 [D2005, XP]
Aleks © (2011-11-16 14:09:00)Написал прогу напоминалку. Хочу чтобы пользователь мог добавить ее в автозагрузку при желании. Использую вариант с внесением в папку "Автозагрузка" ОС(лучше варианта с реестром,так-как в Виндовс 7,для доступа к ключу HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run нужны права администратора). Код такой:
procedure addAutoRun(const filename:string);
var
Folder: array[0..255] of Char;
List: PitemidList;
lnk,sd : String;
begin
lnk := ChangeFileExt(filename,'.lnk');
SHGetSpecialFolderLocation(0,CSIDL_STARTUP,List);
FillChar(Folder, SizeOf(Folder), 0);
SHGetPathFromIDList(List, @Folder);
GetDir(0,sd);
ChDir(folder);
CreateLink(filename,lnk,'','');
CopyFile(PChar(lnk), PChar(ChangeFileExt(ExtractFileName(lnk),'')+'.lnk'), true);
DeleteFile(lnk);
ChDir(sd);
end;
addAutoRun(Application.ExeName);
Программа успешно добавляется в автозагрузку,но при загрузке Windows XP вылетает приблизительно такое окно с ошибкой: " is not valid integer value. Если вручную перетянуть пусковой файл на Пуск-Автозагрузка и перегрузить ПК,то программа запускается без ошибок. Ручной запуск происходит тоже без ошибок. Видимо собака зарыта в процедуре внесения в автозагрузку,но где не понятно :(
Андреевич (2011-11-17 17:09:00) [1]и?
Dennis I. Komarov (2011-11-17 16:26:00) [2]
> зато операционка знает и покажет в случае чего :)
> значит ярлык останется и его можно будет удалить :)
> реализации могут быть разные
> ему подскажут
Андреевич (2011-11-17 16:14:00) [3]
> Dennis I. Komarov © (17.11.11 15:16) [48]
каких отмазок?
Anatoly Podgoretsky (2011-11-17 15:51:00) [4]> Dennis I. Komarov (17.11.2011 14:49:45) [45]
Не ССЗБ, а ОСЗБ
Dennis I. Komarov (2011-11-17 15:16:00) [5]
> каких отмазок?
детских :)
Андреевич (2011-11-17 15:15:00) [6]
> Dennis I. Komarov © (17.11.11 14:56) [46]
каких отмазок?
Dennis I. Komarov (2011-11-17 14:56:00) [7]
> Андреевич (17.11.11 14:46) [44]
Самому еще не смешно, от детских отмазок?
Dennis I. Komarov (2011-11-17 14:49:00) [8]
> Программ с такой функциональность ничтожно мало. Зачем дублировать
> функциональность drag and drop
А я почем знаю, это не ко мне :)
> В его случае это может вообще не связано с папкой "Автозагрузка"
> Возможно даже будет получать ошибку, мол не найдена "снесенная
> программа"
В его как раз связано
> Особенно игры так часто сносят, delete и все
ССЗБ
Андреевич (2011-11-17 14:46:00) [9]
> Это видимая часть
>
> Ты бы сразу сказал что ленивый или что не знаешь.
> Ленивым на данном месте не место.
разумеется это честный чекбокс, и программа которой ты доверяешь. тем которым не доверяешь - не запускаешь, так ведь?
> Это не папка автозагрузки а именно "запускать со стартом
> системы",
реализации могут быть разные
> Как как, да как обычно сносят пользователи
удивительно, но именно пользователи сносят через панель управления :)
> Что удалить, пользователь не знает.
ему подскажут
Dennis I. Komarov (2011-11-17 14:43:00) [10]
> А то что теперь надо звать Пупкина
Если админ-права только у него, то да.
Anatoly Podgoretsky (2011-11-17 14:24:00) [11]> Dennis I. Komarov (17.11.2011 13:11:30) [30]
Особенно игры так часто сносят, delete и все
Anatoly Podgoretsky (2011-11-17 14:23:00) [12]> Андреевич (17.11.2011 13:10:29) [29]
Что удалить, пользователь не знает.
Anatoly Podgoretsky (2011-11-17 14:22:00) [13]> Андреевич (17.11.2011 13:00:27) [27]
Как как, да как обычно сносят пользователи, клавишей DELETE, ведь они ни
чего знать не должны, руководства читать тоже - это твои слова, или ты уже
отказываешься от них.
Anatoly Podgoretsky (2011-11-17 14:21:00) [14]> Dennis I. Komarov (17.11.2011 12:59:25) [25]
В его случае это может вообще не связано с папкой "Автозагрузка"
Возможно даже будет получать ошибку, мол не найдена "снесенная программа"
Anatoly Podgoretsky (2011-11-17 14:19:00) [15]> Андреевич (17.11.2011 12:58:24) [24]
"запускать со стартом системы",
Это не папка автозагрузки а именно "запускать со стартом системы",
Anatoly Podgoretsky (2011-11-17 14:18:00) [16]> Dennis I. Komarov (17.11.2011 12:53:22) [22]
Программ с такой функциональность ничтожно мало. Зачем дублировать
функциональность drag and drop
Anatoly Podgoretsky (2011-11-17 14:17:00) [17]> Андреевич (17.11.2011 12:48:20) [20]
> конечно же нет, этот чекбокс добавляет прогу в автозагрузку. никаких тайн.
Это видимая часть
Ты бы сразу сказал что ленивый или что не знаешь.
Ленивым на данном месте не место.
OW (2011-11-17 14:11:00) [18]ладно не Путина :)
Anatoly Podgoretsky (2011-11-17 14:03:00) [19]> Dennis I. Komarov (17.11.2011 12:05:17) [17]
А то что теперь надо звать Пупкина
Dennis I. Komarov (2011-11-17 13:26:00) [20]
> Андреевич (17.11.11 13:18) [32]
Почему нет? В любом случае это его творение и он за это в ответе перед собой. И не надо переваливать свои грехи на операционку...