您的位置:首页 > 其它

VC获取电脑上所有串口

2012-02-03 16:13 253 查看
BOOL GetSystemSerialComport(CArray<CString,CString> &comarray)
{
HKEY hKey=NULL;

comarray.RemoveAll();

if(RegOpenKeyEx(HKEY_LOCAL_MACHINE,TEXT("HARDWARE\\DEVICEMAP\\SERIALCOMM"),0,KEY_READ,&hKey)!=ERROR_SUCCESS)
{
return FALSE;
}

CString valuename,databuffer;
DWORD valuenamebufferlength=200,valuetype,databuddersize=200;

int i=0;
while(RegEnumValue(hKey,i++,valuename.GetBuffer(200),&valuenamebufferlength,NULL,&valuetype,(BYTE*)databuffer.GetBuffer(200),&databuddersize) != ERROR_NO_MORE_ITEMS)
{
comarray.Add(CString(databuffer));

databuddersize=200;
valuenamebufferlength=200;
}

RegCloseKey(hKey);

return TRUE;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: