Форум программистов, компьютерный форум CyberForum.ru

Получение данных из реестра - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вычислить сумму элементов матрицы лежащих слева от побочной диагонали. http://www.cyberforum.ru/cpp-beginners/thread518655.html
Вычислить сумму элементов матрицы Q (10x10), лежащих слева от побочной диагонали. заранее спасибо)
C++ Деление многочленов, нахождение НОД При реализации НОД у меня многочлен делится на производную идет вот такой порядок: f(x) = g(x)∙q1(x) + r1(x), (1) затем, если r1(x) ≠ 0, – второго данного многочлена, g(x), на первый остаток – на многочлен r1(x): g(x) = r1(x)∙q2(x) + r2(x), (2) далее, если r2(x) ≠ 0, – первого остатка, r1(x), на второй остаток, r2(x): r1(x) = r2(x)∙q3(x) + r3(x), (3) затем, если r3(x) ≠ 0, – второго... http://www.cyberforum.ru/cpp-beginners/thread518642.html
C++ Класс прямоугольник (Visual C++)
Необходимо создать класс прямоугольник и производный класс пятиугольник.Необходимо перемещать фигуры на плоскости(параллельный перенос) и проверить факт пересечения этих фигур.
C++ Подсчёт числа слов в предложении - исправить ошибки
помогите исправит ошибку.прог не правильно работает. он предназначен для считывание число слов в предложении #include <iostream> #include <conio.h> using namespace std; int main() { int word = 1; int d= 0; int pr = 0;
C++ Сформировать файл, в котором хранятся результаты сессии группы. http://www.cyberforum.ru/cpp-beginners/thread518615.html
Всем привет, помогите решить одну задачку, скоро сессия, а я все никак не сделаю. "Сформировать файл, в котором хранятся результаты сессии группы. Написать программу корректировки оценок, у студентов, пересдавших сессию." Заранее спасибо!
C++ Объекты синхронизации. мьютексы, семафоры помогите пожалуйста. . Реализовать на семафоре мьютекс. Количественные характеристики мьютекса должны быть аналогичны соответствующему объекту ядра типа мьютекс. С++ подробнее

Показать сообщение отдельно
p_r_a_g_m_a
 Аватар для p_r_a_g_m_a
108 / 60 / 17
Регистрация: 08.03.2012
Сообщений: 208
Завершенные тесты: 1
14.03.2012, 17:37     Получение данных из реестра
Вот кусок кода для проверки:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
HKEY fKey;
DWORD pcbData = 255;
char* pvData = new char[pcbData];
 
if(RegOpenKeyEx(HKEY_CLASSES_ROOT, ".xml", 0, KEY_QUERY_VALUE, &fKey) == ERROR_SUCCESS)                  //Открываем ключ HKEY_CLASSES_ROOT/.xml
{
    if (RegQueryValueEx(fKey, "", NULL, NULL, (LPBYTE)pvData, &pcbData) == ERROR_SUCCESS)                //Читаем его значение (по умолчанию) - "xmlfile"
    {
        RegCloseKey(fKey);                                  //Закрываем ключ
        if(RegOpenKeyEx(HKEY_CLASSES_ROOT, pvData, 0, KEY_QUERY_VALUE, &fKey) == ERROR_SUCCESS)          //Открываем ключ HKEY_CLASSES_ROOT/xmlfile
        {
            if (RegQueryValueEx(fKey, "", NULL, NULL, (LPBYTE)pvData, &pcbData) == ERROR_SUCCESS) //Читаем его значение (по умолчанию) - "XML Document"
                AfxMessageBox(pvData);
            else
                AfxMessageBox("Не могу прочитать HKEY_CLASSES_ROOT\\xmlfile.@");                  //В итоге получаем сообщение об ошибке 
        }
        else
            AfxMessageBox("Не могу открыть HKEY_CLASSES_ROOT\\xmlfile");
    }
    else
        AfxMessageBox("Не могу прочитать HKEY_CLASSES_ROOT\\.xml.@");
}
else
    AfxMessageBox("Не могу открыть HKEY_CLASSES_ROOT\\.xml");
delete[] pvData;
Не хочет читать данные. То что они есть в реестре сомнений нет. Единственное что мне не понятно, так это то, что ошибка возникает в том случае, если у ключа кроме значение по умолчанию есть еще и другие значения.

Добавлено через 1 час 37 минут
С ошибкой уже разобрался.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 15:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru