HKEY hkey;
BOOL bFromNotes=FALSE; ::RegOpenKeyEx(HKEY_LOCAL_MACHINE,"SOFTWARE\\ZXCTC\\UserManager",0,KEY_ALL_ACCESS,
&hkey); LPBYTE szContractID=new BYTE[80];
LPBYTE szApprovePerson=new BYTE[80];
LPBYTE szMaterialQuery=new BYTE[80]; DWORD dwValueType=REG_SZ;
DWORD dwValueLen=80; strcpy((LPSTR)szApprovePerson,"");
strcpy((LPSTR)szContractID,"");
strcpy((LPSTR)szMaterialQuery,"");
::RegQueryValueEx(hkey,"MaterialQuery",NULL,&dwValueType,szMaterialQuery,
&dwValueLen); //只能查询出"MaterialQuery"的值,后面两个都查不出,为什么??
::RegQueryValueEx(hkey,"ApprovePerson",NULL,&dwValueType,szApprovePerson,
&dwValueLen);
::RegQueryValueEx(hkey,"ContractID",NULL,&dwValueType,szContractID,
&dwValueLen); ::RegSetValueEx(hkey,"ApprovePerson",NULL,dwValueType,(LPBYTE)"",(DWORD)0);
::RegSetValueEx(hkey,"ContractID",NULL,dwValueType,(LPBYTE)"",(DWORD)0);
::RegSetValueEx(hkey,"MaterialQuery",NULL,dwValueType,(LPBYTE)"",(DWORD)0); ::RegCloseKey(hkey);
BOOL bFromNotes=FALSE; ::RegOpenKeyEx(HKEY_LOCAL_MACHINE,"SOFTWARE\\ZXCTC\\UserManager",0,KEY_ALL_ACCESS,
&hkey); LPBYTE szContractID=new BYTE[80];
LPBYTE szApprovePerson=new BYTE[80];
LPBYTE szMaterialQuery=new BYTE[80]; DWORD dwValueType=REG_SZ;
DWORD dwValueLen=80; strcpy((LPSTR)szApprovePerson,"");
strcpy((LPSTR)szContractID,"");
strcpy((LPSTR)szMaterialQuery,"");
::RegQueryValueEx(hkey,"MaterialQuery",NULL,&dwValueType,szMaterialQuery,
&dwValueLen); //只能查询出"MaterialQuery"的值,后面两个都查不出,为什么??
::RegQueryValueEx(hkey,"ApprovePerson",NULL,&dwValueType,szApprovePerson,
&dwValueLen);
::RegQueryValueEx(hkey,"ContractID",NULL,&dwValueType,szContractID,
&dwValueLen); ::RegSetValueEx(hkey,"ApprovePerson",NULL,dwValueType,(LPBYTE)"",(DWORD)0);
::RegSetValueEx(hkey,"ContractID",NULL,dwValueType,(LPBYTE)"",(DWORD)0);
::RegSetValueEx(hkey,"MaterialQuery",NULL,dwValueType,(LPBYTE)"",(DWORD)0); ::RegCloseKey(hkey);
解决方案 »
- GridCtrl控件滚动条问题,求助!
- 我现在学了C++,想做有窗口界面的程序,看看MFC?感觉好难,是不是还需要学什么,知识体系结构不够?
- 弹出菜单消失后,后面被遮住的部分显示空白
- vc Listctrl控件排列问题
- mfc框架中打开和保存的问题
- 字符串问题,解决给出仅有10分
- 传参数
- 请问怎样将外部的应用程序嵌入到VC开发环境的工具条中?即每次打开VC时都可以找到该功能。需要用到哪方面的知识?请说明大致的思路,谢谢
- 如何捕捉recordset对象的出错信息?connection可以用Error集合,那recordset呢?
- 四国俄罗斯方块(网络版)免费发放!
- 关于RegQueryValueEx的问题 给分!
- 使用SHFileOperation删除文件的问题.
HKEY hKey, // handle to key
LPCTSTR lpValueName, // value name
LPDWORD lpReserved, // reserved
LPDWORD lpType, // type buffer
LPBYTE lpData, // data buffer
LPDWORD lpcbData // size of data buffer
);其中最后一个参数是输入输出型的,输入时表示接受数据的缓冲区的大小,当该函数返回时,该值包含了复制到缓冲区的数据的大小。而当缓冲区的大小不能容纳要获取的数据时,该函数返回ERROR_MORE_DATA并在lpcbData中存放了实际需要的缓冲区的大小(字节数)。建议您在每次调用之前恢复原先的缓冲区的大小,问题应该就解决了。
例如:
::RegQueryValueEx(hkey,"MaterialQuery",NULL,&dwValueType,szMaterialQuery,
&dwValueLen);
dwValueLen = 80;
::RegQueryValueEx(hkey,"ApprovePerson",NULL,&dwValueType,szApprovePerson,
&dwValueLen);
dwValueLen = 80;
::RegQueryValueEx(hkey,"ContractID",NULL,&dwValueType,szContractID,
&dwValueLen);
如果需要进一步的信息,您可以参看:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/sysinfo/regapi_3wzc.asp等有关的MSDN信息- 微软全球技术中心 VC技术支持本贴子以“现状”提供且没有任何担保,同时也没有授予任何权利。具体事项可参见使用条款
(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。为了为您创建更好的讨论环境,请参加我们的用户满意度调查
(http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。