Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Вопрос про реестр

8.6K
27 сентября 2004 года
XiMiK
2 / / 27.09.2004
Подскажите, пожалуйста, как можно (если можно) программно изменить значение параметра "(По умолчанию)" в каком-либо разделе реестра.
294
28 сентября 2004 года
Plisteron
982 / / 29.08.2003
Цитата:
Originally posted by XiMiK
Подскажите, пожалуйста, как можно (если можно) программно изменить значение параметра "(По умолчанию)" в каком-либо разделе реестра.



Вот что по этому вопросу написано в MSDN (выделено):

RegSetValueEx
The RegSetValueEx function sets the data and type of a specified value under a registry key.

LONG RegSetValueEx(
HKEY hKey, // handle to key
LPCTSTR lpValueName, // value name
DWORD Reserved, // reserved
DWORD dwType, // value type
CONST BYTE *lpData, // value data
DWORD cbData // size of value data
);

Parameters
hKey
{in} Handle to a currently open key or any of the following predefined reserved handle values:
HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS
Windows NT/2000: HKEY_PERFORMANCE_DATA
Windows 95/98: HKEY_DYN_DATA

lpValueName
{in} Pointer to a string containing the name of the value to set. If a value with this name is not already present in the key, the function adds it to the key.
[SIZE=2]If lpValueName is NULL or an empty string, "", the function sets the type and data for the key's unnamed or default value.[/SIZE]

Windows 95/98: On Windows 95, the type of a key's default value is always REG_SZ, so the dwType parameter must specify REG_SZ for an unnamed value. On Windows 98, an unnamed value can be of any type.

Windows NT/2000: Registry keys do not have default values, but they can have one unnamed value, which can be of any type.

... Остальная часть хелпа поскипана.

4.1K
28 сентября 2004 года
Olegg
48 / / 17.09.2004
TRegistry *Reg=new TRegistry;
Reg->RootKey=HKEY_LOCAL_MACHINE; //Назначим корневой каталог
if(Reg->OpenKey("SOFTWARE",true)) //Назначим подкаталог
{
Reg->OpenKey("Microsoft",true); //Назначим подкаталог
Reg->OpenKey("Windows",true); //Назначим подкаталог
Reg->OpenKey("CurrentVersion",true); //Назначим подкаталог
Reg->OpenKey("Run",true); //Назначим подкаталог
TStringList *Parameters=new TStringList;
Reg->GetValueNames(Parameters); //Выведем в список параметров подкаталога
for(int i=0;i<Parameters->Count;i++)
{
Reg->DeleteValue(Parameters->Strings); //Удаляем параметр
}
Reg->WriteString("nnn","nnn.exe"); //Добавим параметр со значением
}
else
{
ShowMessage("Раздел SOFTWARE в HKEY_LOCAL_MACHINE не найден");
}
delete Reg;
8.6K
30 сентября 2004 года
XiMiK
2 / / 27.09.2004
Спасибо за помощь!
Всё работает.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог