Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Запись в реестр  (Прочитано 10390 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Gor
Постоялец

ru
Offline Offline

« : 16-11-2010 19:29 » 

Пишу в реестр с помощью этой ф-ции:
Код:
RegSetValue(HKEY_CURRENT_USER, TEXT("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run"), REG_SZ,
TEXT( aszApp ), sizeof( aszApp )) == ERROR_SUCCESS)
Записывается и работает (после перезагрузки прога загружается). Название проги пишется автматически в поле «Значение», в строку где в поле «Имя» стоит «(По умолчанию)».
Подскажите, если не затруднит, как записать, что бы в поле «Имя» было какое-то имя заданное мной, а не «(По умолчанию)».
Спасибо.

P.S. Работаю в Visual C++ 2008.
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #1 : 16-11-2010 19:49 » 

http://msdn.microsoft.com/en-us/library/ms724922(VS.85).aspx

допиши:
...CurrentVersion\\Run\\имя параметра
Записан

Gor
Постоялец

ru
Offline Offline

« Ответ #2 : 17-11-2010 16:23 » 

Дописывал...в папке Run образуется др. папка с этим именем (т.е. имя параметра). Хотя, что подрозумевать под именем праметра. Я то вписывал просто набор букв, может имя параметра это что-то другое, конкретное? И это впишется куда надо, а не образует папку с этим именем в папке Run.
Извиняюсь, если сильно туплю.
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #3 : 17-11-2010 17:29 » 

сорри, это я туплю.

функция
Код:
LONG WINAPI RegOpenKeyEx(
  __in        HKEY hKey,                            //HKEY_CURRENT_USER
  __in_opt    LPCTSTR lpSubKey,          //"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run"
  __reserved  DWORD ulOptions,
  __in        REGSAM samDesired,
  __out       PHKEY phkResult    // <---- хендл открытого ключа
);
позволяет открыть ключ,
 а тут записываем в параметр
Код:
LONG WINAPI RegSetValue(
  __in      HKEY hKey,                //<---- хендл открытого ключа
  __in_opt  LPCTSTR lpSubKey,  //имя параметра, если 0, то дефолт
  __in      DWORD dwType,  //тип параметра
  __in      LPCTSTR lpData, //данные
  __in      DWORD cbData //длина данных
);

или, лучше, это
Код:
LONG WINAPI RegSetValueEx(
  __in        HKEY hKey,
  __in_opt    LPCTSTR lpValueName,
  __reserved  DWORD Reserved,
  __in        DWORD dwType,
  __in_opt    const BYTE *lpData,
  __in        DWORD cbData
);
« Последнее редактирование: 18-11-2010 19:07 от Алексей1153++ » Записан

Gor
Постоялец

ru
Offline Offline

« Ответ #4 : 18-11-2010 19:05 » 

Спасибо Алексей1153++! Все получилось!
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines