Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
|
Re: [C#] RegSetValueEx 10.03.04 11:56 Число просмотров: 2011
Автор: Den <Денис Т.> Статус: The Elderman Отредактировано 10.03.04 11:58 Количество правок: 1
|
> DWORD nol = 0; > ... > RegOpenKeyEx(HKEY_CURRENT_USER,"[path]",0,KEY_SET_VALUE,&hK > ey); > RegSetValueEx(hKey,string[x],0,REG_DWORD,&nol,1);
1. В любую функцию Win32API передаются и возвращаются из нее только значения типа DWORD, обычно это ссылки. Соответственно вторым параметром должна быть не строка, а ссылка на null-terminated строку содержащую имя значения реестра.
2. Если ты передаешь значение типа REG_DWORD, то и последний параметр должен = 4 (4 байта = двойное слово). Соответственно переменная nol должна иметь тип DWORD и содержать значение, которое ты хочешь засунуть в реестр.
|
<programming>
|
[C#] RegSetValueEx wtf? 09.03.04 20:58
Автор: choor Статус: Elderman
|
DWORD nol = 0;
...
RegOpenKeyEx(HKEY_CURRENT_USER,"[path]",0,KEY_SET_VALUE,&hKey);
RegSetValueEx(hKey,string[x],0,REG_DWORD,&nol,1);
...
Потом открываю ключ с помощью regedit а там:
не правильное значение DWORD... Чё такое? хз...
|
|
После установки размера dword в 4 байта всё благополучно заработало :) 10.03.04 21:39
Автор: choor Статус: Elderman
|
|
|
Re: [C#] RegSetValueEx 10.03.04 11:56
Автор: Den <Денис Т.> Статус: The Elderman Отредактировано 10.03.04 11:58 Количество правок: 1
|
> DWORD nol = 0; > ... > RegOpenKeyEx(HKEY_CURRENT_USER,"[path]",0,KEY_SET_VALUE,&hK > ey); > RegSetValueEx(hKey,string[x],0,REG_DWORD,&nol,1);
1. В любую функцию Win32API передаются и возвращаются из нее только значения типа DWORD, обычно это ссылки. Соответственно вторым параметром должна быть не строка, а ссылка на null-terminated строку содержащую имя значения реестра.
2. Если ты передаешь значение типа REG_DWORD, то и последний параметр должен = 4 (4 байта = двойное слово). Соответственно переменная nol должна иметь тип DWORD и содержать значение, которое ты хочешь засунуть в реестр.
|
|
Не знаю как в c# но длина dword'а (последлний параметр)... 10.03.04 10:39
Автор: Killer{R} <Dmitry> Статус: Elderman Отредактировано 10.03.04 10:40 Количество правок: 1
|
> RegSetValueEx(hKey,string[x],0,REG_DWORD,&nol,1); Не знаю как в C# но длина DWORD'а (последлний параметр) всегда была 4
|
|
Если моя память мне не изменяет, то если есть open, то должен быть и close... 09.03.04 21:53
Автор: Ktirf <Æ Rusakov> Статус: Elderman
|
|
|
|