CRegKey RegKey; int nCount = 0; //系统COM端口的注册表信息就在该目录下。 if(RegKey.Open(HKEY_LOCAL_MACHINE, "Hardware\\DeviceMap\\SerialComm") == ERROR_SUCCESS) { while(true) { TCHAR ValueName[_MAX_PATH]; //记录键名 BYTE ValueData[_MAX_PATH]; //记录键值 DWORD nValueSize = _MAX_PATH; DWORD nDataSize = _MAX_PATH; DWORD nType; //逐个枚举出注册表目录下的键名和键值。 if(::RegEnumValue(HKEY(RegKey), nCount, ValueName, &nValueSize, NULL, &nType, ValueData, &nDataSize) == ERROR_NO_MORE_ITEMS) { break; } cout<<ValueName<<", "<<ValueData<<endl; nCount++; } }