我使用theApp.GetSectionString(lpszSubSection, lpszEntry, lpszDefault)
來從註冊表中讀取值。BUG:theApp.GetSectionString()不返回默認值
問題是如果註冊表中缺少目標條目,它不會返回默認值。
CString str = GetSectionString(_T("Settings"),_T("Gugus"),_T("default 123"));
我也總是檢查str
,如果它是一個空字符串,然後手動將其設置爲默認值的str
。
這是一個錯誤或默認行爲GetSectionString()
?
CString str = theApp.GetSectionString (_T("Xenax"),_T("MechanicalLimit X-,X+,-Y-,Y+"), "-20999, 4799, 2699, -9999");
if (str.empty()) // <- Needed, :((
{
str = "-20999, 4799, 2699, -9999" ;
}
「CWinAppEx :: GetSectionString()」中存在一個錯誤。這個bug在VS 2012中修復 –
是的,我正在使用VS2010。 VS2010中有這個問題的解決方法嗎? –
您必須更新到VS 2012或更高版本的VS或使用該解決方法。 –