Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.79/29: Рейтинг темы: голосов - 29, средняя оценка - 4.79
-10 / 2 / 1
Регистрация: 08.01.2015
Сообщений: 325

Добавление программы в реестр (Автозагрузку) | RegSetValueEx

27.08.2015, 01:17. Показов 6027. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую, уважаемые пользователи cyberforum.ru!
У меня проблема, не работает RegSetValueEx, не добавляет программу в реестр.
Сам код:
C++
1
2
3
4
5
6
7
8
9
HKEY mykey;
if ((RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\MicrosoCft\\Windows\\CurrentVersion\\Run", 0, KEY_ALL_ACCESS | KEY_WOW64_32KEY, &mykey)) == ERROR_SUCCESS)
{
    char pathname[256];
    ZeroMemory(pathname, sizeof(pathname));
    GetModuleFileNameA(NULL,pathname,sizeof(pathname));
    RegSetValueEx(mykey, L"by $continue$", 0, REG_SZ, reinterpret_cast<const BYTE *>(pathname), sizeof(pathname));
    RegCloseKey(mykey);
}
Надеюсь на Вашу помощь, заранее огромное спасибо!
Миниатюры
Добавление программы в реестр (Автозагрузку) | RegSetValueEx  
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.08.2015, 01:17
Ответы с готовыми решениями:

Добавление в автозагрузку через реестр
Подскажите как сделать чтобы при запуске компьютера программа запускалась. Тоесть я хочу чтобы появлялось окошко при каждом старте...

Добавление файла в автозагрузку через реестр
Впринципе, из названия темы уже понятна суть проблемы. Но есть одно но. Необходимо не просто тупо добавить файл в папочку...

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

24
-10 / 2 / 1
Регистрация: 08.01.2015
Сообщений: 325
29.08.2015, 15:08  [ТС]
Студворк — интернет-сервис помощи студентам
Ой, в Run не зашел. Действительно - там есть, но как сделать под x64/x32?
Что бы под обеими битностями добавляло в реестр?
0
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
29.08.2015, 15:10
А чем не устраивает то, что есть сейчас ?
32-битные программы пишут в 32-битный Run, 64-битные - в 64-битный.
И все работает.

Ну можно при открытии ключа использовать флаг KEY_WOW64_64KEY,
но я бы так не стал делать.
0
-10 / 2 / 1
Регистрация: 08.01.2015
Сообщений: 325
29.08.2015, 15:13  [ТС]
Убежденный, Но, при запуске компьютера - программа сама не запускается.
Возможно из-а того, что путь кривой?
Если, да - то как исправить?
Миниатюры
Добавление программы в реестр (Автозагрузку) | RegSetValueEx  
0
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
29.08.2015, 15:20
Лучший ответ Сообщение было отмечено Kenny_Dalglish как решение

Решение

Поменяй тип переменной szPath с char на wchar_t.
Ведь функция RegSetValueEx у тебя юникодная, она подразумевает,
что передаваемый ей текст для REG_SZ будет в "широких" символах.
И GetModuleFileName тоже. Короче, должно быть что-то типа такого:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
HKEY hKey;
wchar_t szPath[0x100];
GetModuleFileNameW(NULL, szPath, 100);
LRESULT Status = RegCreateKeyExW(HKEY_LOCAL_MACHINE,
    L"Software\\Microsoft\\Windows\\CurrentVersion\\Run",
    NULL,
    L"",
    REG_OPTION_NON_VOLATILE,
    KEY_SET_VALUE,
    NULL,
    &hKey,
    NULL);
if (!SUCCEEDED(Status)) {
    // Тут обработка ошибки.
}
 
RegSetValueExW(
    hKey,
    L"My program",
    NULL,
    REG_SZ,
    (BYTE const *)szPath,
    (wcslen(szPath) + 1) * sizeof (wchar_t)
    );
RegCloseKey(hKey);
1
-10 / 2 / 1
Регистрация: 08.01.2015
Сообщений: 325
29.08.2015, 16:03  [ТС]
Всем спасибо, но особенно: Убежденный
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.08.2015, 16:03

Добавление программы в автозагрузку
добавляю так: var key = Registry.LocalMachine.OpenSubKey(@&quot;SOFTWARE\Microsoft\Windows\CurrentVersion\Run&quot;, true); ...

Добавление программы в автозагрузку
Помогите, нужно добавить программу в реестр, но после запуска ничего не происходит(в автозапуске ничего не появляется). прога без формы....

Добавление программы в автозагрузку
Написал программу которая меняет фон рабочего стала в интервале 3мин. но не могу как ее добавить в загрузку то есть что бы включался ПК и...

Добавление программы в автозагрузку
Написал антивирус, но нужно после установки добавить его в автозагрузку с правами администратора без вопросов, то есть чтобы он запускался...

Добавление программы в автозагрузку.
Очень надо=)


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

Или воспользуйтесь поиском по форуму:
25
Ответ Создать тему
Новые блоги и статьи
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek ВВЕДЕНИЕ Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2. Задача: Обеспечить запись документа в регистр сведений независимо от. . .
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется. Ну как вам?
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания источниках данных и элементов формы(текстовые поля и метки), опирается все это на технологию событий и мета. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru