Привет, я проверяю идентификатор GUID SqlClass, который находится в моем Test.dll Но он не дает успеха, он не справился со значением ... Что не так в этом коде.Как проверить идентификатор класса зарегистрирован или нет?
#include <windows.h>
#include <iostream>
using namespace std;
int main() {
HKEY hk;
long n = RegOpenKeyEx(HKEY_CLASSES_ROOT,TEXT("\\CLSID\\SqlClass"),
0,KEY_QUERY_VALUE, &hk);"
if (n == ERROR_SUCCESS) {
cout << "OK" << endl;
}
else {
cout << "Failed with value " << n << endl;
}
}
Я попытался, как это также RegOpenKeyEx (HKEY_CLASSES_ROOT, TEXT ("\ CLSID \ 46A951AC-C2D9-48e0-97BE-91F3C9E7B065"), 0, KEY_QUERY_VALUE, & Нк)
Этот код работает FINE
#include <windows.h>
# include <iostream>
using namespace std;
int main() {
HKEY hk;
long n = RegOpenKeyEx(HKEY_CLASSES_ROOT,
TEXT("\\CLSID\\{46A951AC-C2D9-48e0-97BE-91F3C9E7B065}"),
0,KEY_QUERY_VALUE, &hk);"
if (n == ERROR_SUCCESS) {
cout << "OK" << endl;
}
else {
cout << "Failed with value " << n << endl;
}
}
Действительно ли значение действительно присутствует в реестре на этом пути? – sharptooth
Во втором фрагменте кода GUID должен быть заключен в «{» и «}». Посмотрите, как другие GUID хранятся в реестре. – sharptooth
Комментарии являются полезными Спасибо Sharptooth – Cute