Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Системное программирование и WinAPI > Чтение реестра


Автор: knut 8.3.2007, 22:49
да вот в том и  дело что статус не правелный . 
не ну если я очень туплы извеняюсь. 
но не как не могу разобратся.  HKEY_CURRENT_USER\Software\Microsoft\ по этой дире создаю свой ключь MY  потом для MY создаю Value 
и  это все програмируем 
Код



  HKEY hKey;
    LONG lRegErr = 0;
    DWORD /*dwSize = 256,*/ dwType = REG_SZ;
    char* uData = new  char[256];
  DWORD dwSize = sizeof(uData); 
    lRegErr = RegOpenKeyEx(HKEY_LOCAL_MACHINE, L"Software\\Microsoft\\My", 0, KEY_QUERY_VALUE, &hKey);// и здесь не то что надо 
  if(lRegErr == ERROR_SUCCESS){
    lRegErr = RegQueryValueEx(hKey, L"Test", NULL, &dwType, (LPBYTE)uData, &dwSize);// здесь не то что надо 
      if(lRegErr == ERROR_SUCCESS){
        std::string str_value;
        str_value = uData;
        std::cout<<str_value.c_str();
      }
      else  std::cout<<"Error In Query"<<std::endl;
  }
  else std::cout<<"Error In Open"<<std::endl;
  
  RegCloseKey(hKey);
  delete [] uData;

вот если я такой тупой то поправте менья.
вот что е так в коде


 

Автор: Папараццы 9.3.2007, 00:36
Все эт делается через Буилдер без коких либо проблем...
#include<Registry.hpp> 
А потом экземпляр класса TRegistry и все без проблем...По мойму так проще

Автор: able1985 10.3.2007, 18:25
Собс-но говоря, а почему ты пытаешься создать ключ ф-ей RegOpenKeyEx, она же только открывает для чтения, так же, как и RegQueryValueEx. Используй RegCreateKeyEx и RegSetValueEx.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)