您好我正在检查我的Test.dll中的SqlClass的GUID 但是它没有成功,它失败了,价值...这段代码有什么不对。
#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,&amp; hk)
此代码工作精细
#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;
}
}
答案 0 :(得分:2)
我在CLSID下从未见过GUID以外的任何内容,因此密钥可能不存在。在regedit下查看该节点,看看我的意思。
失败代码是什么,n?您可以通过两种方式查看此内容
将数字放入Visual Studio的“工具”菜单中的“错误查找”工具中。
在n上调用FormatMessage,它会为您提供与该错误相关的文字。