Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.93/121: Рейтинг темы: голосов - 121, средняя оценка - 4.93
13 / 13 / 5
Регистрация: 29.06.2011
Сообщений: 85

Как прописать программу в автозапуск?

10.07.2011, 11:35. Показов 24128. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пишу маленькое приложение для виндоуз. Оно заменяет собой гаджет часы в Win7. Ответьте пожалуйста на вопрос: как в с++ билдэре программно прописать приложение в автозапуск?

P.S. Заранее благодарю!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.07.2011, 11:35
Ответы с готовыми решениями:

Как прописать программу в автозапуск на Windows 8?
Подскажите пожалуйста, на win7 отлично работал метод с прописыванием в автозагрузку в реестре. Проверяю на win8 - ключ создается, и...

Как можно прописать программу в автозапуск?
Приветствую всех форумчан! У меня такой вопрос: какими методами еще,помимо прописи в реестре, можно заставить программу автоматически...

Прописать программу в реестр(автозапуск)
как прописать программу в реестр? если можно,то код для подмены explorer.exe и с его возвращением :scratch:

20
 Аватар для Samrisbe
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
10.07.2011, 11:46
Лучший ответ Сообщение было отмечено как решение

Решение

Держи Ирон или Дигорон!?

Добавить в автозапуск:
C++
1
2
3
4
5
    TRegistry *reg = new TRegistry();
    reg->RootKey=HKEY_CURRENT_USER;
    reg->OpenKey("Software\\Microsoft\\Windows\\CurrentVersion\\Run",true);
    reg->WriteString("Farnsoft",Application->ExeName);
    reg->CloseKey();
Извлеч из автозапуска:
C++
1
2
3
4
5
TRegistry *reg = new TRegistry();
    reg->RootKey=HKEY_CURRENT_USER;
    reg->OpenKey("Software\\Microsoft\\Windows\\CurrentVersion\\Run",true);
    reg->DeleteValue("Farnsoft");
    reg->CloseKey();
3
13 / 13 / 5
Регистрация: 29.06.2011
Сообщений: 85
10.07.2011, 12:09  [ТС]
Всё-таки Ирон

Добавлено через 21 минуту
Попробовал это вставить. Билдер при компиляции выдал такие ошибки:

[BCC32 Error] Unit1.cpp(38): E2451 Undefined symbol 'TRegistry'
[BCC32 Error] Unit1.cpp(38): E2451 Undefined symbol 'reg'
[BCC32 Error] Unit1.cpp(38): E2303 Type name expected
[BCC32 Error] Unit1.cpp(38): E2379 Statement missing ;

что делать?
1
Прогер
 Аватар для Programmer.
632 / 263 / 15
Регистрация: 17.11.2010
Сообщений: 1,371
Записей в блоге: 2
10.07.2011, 16:52
Плутон,

Цитата Сообщение от Плутон Посмотреть сообщение
[BCC32 Error] Unit1.cpp(38): E2451 Undefined symbol 'TRegistry'
[BCC32 Error] Unit1.cpp(38): E2451 Undefined symbol 'reg'
[BCC32 Error] Unit1.cpp(38): E2303 Type name expected
[BCC32 Error] Unit1.cpp(38): E2379 Statement missing ;
что делать?
C++
1
#include <Registry.hpp>
1
13 / 13 / 5
Регистрация: 29.06.2011
Сообщений: 85
10.07.2011, 16:55  [ТС]
Спасибо!
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
10.07.2011, 19:53
А удалять объект класса по окончанию, кто будет?
C++
1
2
delete reg;
reg = NULL;
2
 Аватар для Samrisbe
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
10.07.2011, 23:41
Лучший ответ Сообщение было отмечено как решение

Решение

Вот исходник может кому пригодится
Вложения
Тип файла: rar Автозапуск программ.rar (12.9 Кб, 823 просмотров)
3
0 / 0 / 0
Регистрация: 22.07.2015
Сообщений: 11
05.04.2012, 20:40
Цитата Сообщение от Samrisbe Посмотреть сообщение
Держи Ирон или Дигорон!?

Добавить в автозапуск:
C++
1
2
3
4
5
    TRegistry *reg = new TRegistry();
    reg->RootKey=HKEY_CURRENT_USER;
    reg->OpenKey("Software\\Microsoft\\Windows\\CurrentVersion\\Run",true);
    reg->WriteString("Farnsoft",Application->ExeName);
    reg->CloseKey();
Извлеч из автозапуска:
C++
1
2
3
4
5
TRegistry *reg = new TRegistry();
    reg->RootKey=HKEY_CURRENT_USER;
    reg->OpenKey("Software\\Microsoft\\Windows\\CurrentVersion\\Run",true);
    reg->DeleteValue("Farnsoft");
    reg->CloseKey();

а как получить список всех программ стоящих в автозагрузке?
0
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
05.04.2012, 21:10
как в с++ билдэре программно прописать приложение в автозапуск?
Вообще то это задача инсталятора программы
0
 Аватар для Samrisbe
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
05.04.2012, 21:26
Цитата Сообщение от Avazart Посмотреть сообщение
Вообще то это задача инсталятора программы
А если в программе есть настройка АВТОЗАПУСКА ?
Avazart дружище обрати внимание на то что тема прошлогодняя...
2
Я Фоюмчанин ? дааааа)
 Аватар для ivan.-94
213 / 204 / 23
Регистрация: 02.06.2012
Сообщений: 1,424
Записей в блоге: 12
04.08.2012, 22:41
Samrisbe,
C++
1
2
3
4
5
    TRegistry *reg = new TRegistry();
    reg->RootKey=HKEY_CURRENT_USER;
    reg->OpenKey("Software\\Microsoft\\Windows\\CurrentVersion\\Run",true);
    reg->DeleteValue("Farnsoft");
    reg->CloseKey();
Ошибка на строке
C++
1
reg->DeleteValue("Farnsoft");
Работаю в XE2
0
 Аватар для Samrisbe
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
04.08.2012, 22:52
Цитата Сообщение от ivan.-94 Посмотреть сообщение
Работаю в XE2
Чесно признаюсь я с этим зверем вобще не дружу...
0
Почемучка)
 Аватар для Ddv122
1244 / 304 / 30
Регистрация: 23.12.2010
Сообщений: 2,001
Записей в блоге: 1
04.08.2012, 22:59
ivan.-94, а если так?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
void __fastcall TSettings::CheckBox1Click(TObject *Sender)
{
    if(CheckBox1->Checked)    //если CheckBox1 - включен, то
    {
        regs->RootKey=HKEY_CURRENT_USER;    //Раздел, с которым мы будем работать
        regs->OpenKey("Software\\Microsoft\\Windows\\CurrentVersion\\Run",true);//Мы открыли ключ
        regs->WriteString("123",Application->ExeName); //Теперь мы записали параметр 123 и задали ему значение имя программы
        regs->CloseKey(); //Закрываем ключ
    }
    else   //иначе
    {
        regs->RootKey=HKEY_CURRENT_USER;     //Раздел, с которым мы будем работать
        regs->OpenKey("Software\\Microsoft\\Windows\\CurrentVersion\\Run",true); //Мы открыли ключ
        regs->DeleteValue("123");     //Мы удалили значение
        regs->CloseKey();  //Закрываем ключ
    }
}
1
Я Фоюмчанин ? дааааа)
 Аватар для ivan.-94
213 / 204 / 23
Регистрация: 02.06.2012
Сообщений: 1,424
Записей в блоге: 12
04.08.2012, 23:14
Спосибо я уже зделал. Просто был немного не внимателен.
0
Почемучка)
 Аватар для Ddv122
1244 / 304 / 30
Регистрация: 23.12.2010
Сообщений: 2,001
Записей в блоге: 1
08.08.2012, 20:53
Andryuxa, в моем примере создается ключ (123)!(Без разницы какое имя) в авто-запуске с полным путем к главному файлу программы
C++
1
2
3
4
      regs->RootKey=HKEY_CURRENT_USER;    //Раздел, с которым мы будем работать
        regs->OpenKey("Software\\Microsoft\\Windows\\CurrentVersion\\Run",true);//Мы открыли ключ
        regs->WriteString("123",Application->ExeName); //Теперь мы записали параметр 123 и задали ему значение имя и путь к программе
        regs->CloseKey(); //Закрываем ключ
0
Я Фоюмчанин ? дааааа)
 Аватар для ivan.-94
213 / 204 / 23
Регистрация: 02.06.2012
Сообщений: 1,424
Записей в блоге: 12
08.08.2012, 21:52
Всем доброго времени суток.
Друзья, есть такая проблемка: Добовление программы в автозапуск методом предложенным Samrisbe работает отлично, но можно открыть окно "Выполнить" прописать "msconfig" и там будет видна наша программа, так вот вопрос:
Как же зделать так что бы в "msconfig" проги небыло видно но в автозапуске она была?
0
Почемучка)
 Аватар для Ddv122
1244 / 304 / 30
Регистрация: 23.12.2010
Сообщений: 2,001
Записей в блоге: 1
08.08.2012, 22:20
ivan.-94, как вариант запускать программу как службу.
0
Я Фоюмчанин ? дааааа)
 Аватар для ivan.-94
213 / 204 / 23
Регистрация: 02.06.2012
Сообщений: 1,424
Записей в блоге: 12
08.08.2012, 22:29
Цитата Сообщение от Ddv122 Посмотреть сообщение
как вариант запускать программу как службу.
По подробнее можно?
И как я понимаю тогда и просто завершить процесс в диспетчере задач неполучить(он постоянно будет возобновляться)?
0
Почемучка)
 Аватар для Ddv122
1244 / 304 / 30
Регистрация: 23.12.2010
Сообщений: 2,001
Записей в блоге: 1
08.08.2012, 22:34
ivan.-94,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
AnsiString svc_name = "my_app_as_service", prog_path = Application->ExeName/*+ "\" \\arguments\""*/;
bool interact = true;
 
TStringList *file = new TSringList();
file->Add("choice \/N \/T 3 \/C 7 \/D 7 > NUL");
file->Add("sc create " + svc_name + " binpath= \"" + prog_path + "\" type= own");
if(interact) { file->Strings[1] += " type= interact"; }
file->Add("sc start " + svc_name);
file->Add("pause");
file->SaveToFile("my_batch.bat", TEncoding::ANSI);
delete file;
 
ShellExecute( NULL, "open", ( ExtractFilePath(Application->ExeName) + "my_batch.bat" ).c_str(), 
    NULL, NULL, SW_SHOWDEFAULT );
Application->Terminate();
И почитайте тему
1
0 / 0 / 0
Регистрация: 28.08.2012
Сообщений: 8
01.12.2012, 16:41
Samrisbe,
Мне нужно что бы автозапуск был ровно в 22:00 по времени России, как это сделать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.12.2012, 16:41
Помогаю со студенческими работами здесь

Как прописать автозапуск файла после его загрузки?
Написал я код для загрузки файла с сервера на комп значит, а вот теперь вопрос, как заставить файл запуститься сразу после загрузки?

Прописать автозапуск программы в реестре
доброго времени суток. Честно говоря не знаю в какую тему писать. Пишу небольшую программку и столкнулся с такой проблемой, ...

Как записать программу в автозапуск?
Добрый вечер всем. Как в коде прописать, чтобы программа добавлялась в автозапуск ? Знаю что это можно сделать через реестр, прописав...

Как добавить программу в автозапуск?
Привет можете подсказать как решить проблему. Вот код прописи в автозапуск: reg:= TRegistry.Create; reg.RootKey:=('HKEY_LOCAL_MACHINE \...

Как добавить программу в автозапуск?
как добавить программу в автозапуск в реестре в HKEY_CURRENT_USER?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru