Форум — Ответы ( К темам )
? | Dr.Phoenix: А как сделать, чтобы прога залезла в авторун? (07-02-2003 01:22:11) |
Теперь, когда мы знаем, как засунуть прогу в другу прогу, нада бы сделать еще, чтоб прога запускалать при каждом запуске виндовза, причем так, чтоб это было как можно более незаметно. Я так понимаю, что нада в реестр лезть. Вопрос: куда, как, и что вписать? | |
Petro (07-02-2003 17:23:37) | |
Похоже, ты недоброе дело задумал... ;))) HKLM\Software\Microsoft\Windows\CurrentVersion\Run Туда пишешь путь к проге. | |
Dr.Phoenix (10-02-2003 08:00:17) | |
Вышесказанное — ответ на вопрос "Куда и Что?" Теперь расскажите Как? | |
Za (18-02-2003 02:21:30) | |
Тотже самый вопрос себе задаю... и... не могу ответить. Кажется надо через TRegistry делать.
| |
Za (20-02-2003 00:39:56) | |
Чтобы поместить прогу в авторун можно использовать следущую функцию. Задаешь ProgramName как полный путь к нужной тебе проги (пр. C:\\WINNT\\notepad.exe) и она уже в авторуне. На выходе получаешь также код возврата (false если облом и true если все чики-пуки). Кстати не забуть подрубить #include <Registry.hpp>. bool AddToAutorun(AnsiString ProgramName) { bool answer; try { TRegistry *Reg; Reg=new TRegistry; // Создаем новый ключик. Reg->RootKey=HKEY_CURRENT_USER; // Главная ветвь AnsiString Key="\\Software\\Microsoft\\Windows\\CurrentVersion\\Run"; // Ветвь автозагрузки Reg->OpenKey(Key, true); //Если стоит true тогда, ели ключа не было, он создасьться автоматом Reg->WriteString(ExtractFileName(ProgramName), ProgramName); // Добавляем нашу прогу. Хе-хе... Reg->CloseKey(); Reg->Free(); answer=true; } catch (...) { answer=false; // Немогу залезьть в ё***ый реестр. } return answer; } Надеюсь допетришь как удалять оттуда, если нет, то используй DeleteValue(ExtractFileName(ProgramName)) где-то в середине этой функции. |