Форум — Ответы     (  К темам )
 ?  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))

где-то в середине этой функции.