|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
29.09.2009, 11:55 | #1 |
Пользователь
Регистрация: 29.09.2009
Сообщений: 12
|
после автозагрузки программа не работает
Помогите разобраться
Взял с этого форума исходник "добавление ярлыка в автозагрузку" Все работает, но после добавления ярлыка или рестарта системы (запускается моя прога) моя программа не может найти сторонние файлы (базы данных, изображения и т.п.), (этого адреса и не должно быть) а если запускать вручную то все нормально. Что ей не хватает при автостарте или после добавления ярлыка??? ... var {автозагрузка} Folder : array[0..255] of Char; // путь к StartUp List : PItemIDList; // список специальных папок dir : string; // путь к папке проги ... implementation uses Unit2, Unit3, Unit4, Unit5; {$R *.dfm} // СОЗДАНИЕ ЯРЛЫКА procedure CreateLink(const PathObj, PathLink, Desc, Param : string); var IObject : IUnknown; SLink : IShellLink; PFile : IPersistFile; begin IObject := CreateComObject(CLSID_ShellLink); SLink := IObject as IShellLink; PFile := IObject as IPersistFile; with SLink do begin SetArguments(PChar(Param)); SetDescription(PChar(Desc)); SetPath(PChar(PathObj)); end; PFile.Save(PWChar(WideString(PathLi nk)), false); end; ... procedure TGlavForm.FormCreate(Sender: TObject); begin {вернуть путь к папке проги} dir := ExtractFilePath(ParamStr(0)); end; ... procedure TGlavForm.Windows1Click(Sender: TObject); begin // АВТОЗАПУСК {установить} if Windows1.Checked = true then begin {создать ярлык} CreateLink(dir + '\K_05.exe', dir + 'Quick Start.lnk', '', ''); {найти папку StartUp} SHGetSpecialFolderLocation(0, CSIDL_STARTUP, List); FillChar(Folder, SizeOf(Folder), 0); SHGetPathFromIDList(List, @Folder); {перейти в директорию StartUp} ChDir(Folder); {копировать файл} CopyFile(PChar(ExtractFilePath(Para mStr(0)) + 'Quick Start.lnk'), 'Quick Start.lnk', true); ShowMessage('Программа добавлена в автозагрузку !'); {удалить ярлык из папки проги} DeleteFile(ExtractFilePath(ParamStr (0)) + 'Quick Start.lnk'); end else {удалить} begin {найти папку StartUp} SHGetSpecialFolderLocation(0, CSIDL_STARTUP, List); FillChar(Folder, SizeOf(Folder), 0); SHGetPathFromIDList(List, @Folder); {перейти в папку StartUp} ChDir(Folder); {удалить файл} DeleteFile('Quick Start.lnk'); ShowMessage('Программа удалена из автозагрузки !'); end; end; Последний раз редактировалось Kos123; 29.09.2009 в 12:20. |
29.09.2009, 13:28 | #2 |
Участник клуба
Регистрация: 19.01.2009
Сообщений: 1,457
|
Зачем столько писанины ?
Код:
|
29.09.2009, 13:43 | #3 |
Пользователь
Регистрация: 29.09.2009
Сообщений: 12
|
за краткость спасибо но ошибка всеравно выскакивает
|
29.09.2009, 13:52 | #4 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Кросспост.
Закрыто.
I'm learning to live...
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
virtualbox: не работает сеть на компе после использования этой проги | bill_gates | Софт | 0 | 05.07.2009 13:03 |
После переустановки винды не работает звук. | Meldo | Компьютерное железо | 12 | 20.06.2009 10:35 |
После копирования в другую директорию программа не работает | Terikon | Общие вопросы Delphi | 8 | 31.03.2009 00:19 |
Почему после передачи tStream методами Indy не работает tBitmap.loadFromStream ? | Altera | Работа с сетью в Delphi | 2 | 21.03.2009 15:35 |
delphi7 программа после компиляции сразу закрывается | fredd | Помощь студентам | 1 | 30.10.2008 14:25 |