информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
За кого нас держат?Spanning Tree Protocol: недокументированное применениеСтрашный баг в Windows
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 С наступающим 
 Microsoft обещает радикально усилить... 
 Ядро Linux избавляется от российских... 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
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
<"чистая" ссылка>
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2025 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach