HKEY hKey = 0;
DWORD dwType = REG_SZ;
TCHAR buf[255] = {0};
DWORD dwBufSize = sizeof(buf);
DWORD ret;
CComboBox m_portCombo;
if(RegOpenKeyEx(HKEY_LOCAL_MACHINE, TEXT("HARDWARE\\DEVICEMAP\\SERIALCOMM"), 0, KEY_QUERY_VALUE, &hKey) == ERROR_SUCCESS)
{
if(RegQueryValueEx(hKey, TEXT("\\Device\\Serial0"), 0, &dwType, (LPBYTE)buf, &dwBufSize) == ERROR_SUCCESS)
{
CString str = buf;
m_portCombo.AddString(str);
}
if(RegQueryValueEx(hKey, TEXT("\\Device\\Serial1"), 0, &dwType, (LPBYTE)buf, &dwBufSize) == ERROR_SUCCESS)
{
CString str = buf;
}
if(RegQueryValueEx(hKey, TEXT("\\Device\\Serial2"), 0, &dwType, (LPBYTE)buf, &dwBufSize) == ERROR_SUCCESS)
{
CString str = buf;
}
if(RegQueryValueEx(hKey, TEXT("\\Device\\Serial3"), 0, &dwType, (LPBYTE)buf, &dwBufSize) == ERROR_SUCCESS)
{
CString str = buf;
}
}
第一個問題:我想改變TEXT("\\Device\\Serial3")
喜歡的東西TEXT("\\Device\\Serial",%i)
,這樣我就可以繼續代碼爲for
loop.Is所有行tehre的方式來做到這一點?MFC acombo框中添加字符串
問題二:如果我用m_portCombo.AddString(str);
我得到一個錯誤Debug Assertion Failed!
,並且,當然,組合框不與註冊表值填充。爲什麼會發生?
右和右。太好了!謝謝! – MRM