怎么在注册表中读键值时出错?
HKEY hk;
BYTE data[200];
RegOpenKeyEx(HKEY_LOCAL_MACHINE, "software\\odbc\\odbc.ini\\sqlserver_yudb", 0, KEY_ALL_ACCESS, &hk); li = RegQueryValueEx(hk, "database", NULL, NULL, data, &cbdata);
MessageBox((char *)data);
TRACE("%ld", li); li = RegQueryValueEx(hk, "server", NULL, NULL, data, &cbdata);
TRACE("%ld", li);
MessageBox((char *)data);结果在读第一个健值时是对的,但读第2个时出错。(分别读取是对的,连续读不对)
第1个li为0, 但是第2个为234。
why?
HKEY hk;
BYTE data[200];
RegOpenKeyEx(HKEY_LOCAL_MACHINE, "software\\odbc\\odbc.ini\\sqlserver_yudb", 0, KEY_ALL_ACCESS, &hk); li = RegQueryValueEx(hk, "database", NULL, NULL, data, &cbdata);
MessageBox((char *)data);
TRACE("%ld", li); li = RegQueryValueEx(hk, "server", NULL, NULL, data, &cbdata);
TRACE("%ld", li);
MessageBox((char *)data);结果在读第一个健值时是对的,但读第2个时出错。(分别读取是对的,连续读不对)
第1个li为0, 但是第2个为234。
why?
li = RegQueryValueEx(hk, "database", NULL, &dwType, data, &cbdata);
MessageBox((char *)data);
TRACE("%ld", li);dwType=100;
li = RegQueryValueEx(hk, "server",NULL, &dwType, data, &cbdata);
TRACE("%ld", li);
MessageBox((char *)data);
why?