CString output ; int size = m_NicInfo.size(); output.Format(_T("共%d塊網卡\r\n"),size); //VE_NicINFO_IT it = this->m_NicInfo.begin(); //for(; it != m_NicInfo.end(); ++it){ // CString tmp; // tmp.Format(_T("網卡GUID:%s\r\n"),it->NicGUID); // output += tmp; // tmp.Format(_T("網卡描述:%s\r\n"),it->NicDesc); // output += tmp; // tmp.Format(_T("網卡名稱:%s\r\n"),it->NicName); // output += tmp; // tmp.Format(_T("網卡註冊表中INDEX:%s\r\n"),it->NicClassIndex); // output += tmp; //} for(int pos = 0; pos < size ; pos++){ CString tmp; tmp.Format(_T("網卡GUID:%s\r\n"),m_NicInfo.at(pos).NicGUID); output += tmp; tmp.Format(_T("網卡描述:%s\r\n"),m_NicInfo.at(pos).NicDesc); output += tmp; tmp.Format(_T("網卡名稱:%s\r\n"),m_NicInfo.at(pos).NicName); output += tmp; tmp.Format(_T("網卡註冊表中INDEX:%s\r\n"),m_NicInfo.at(pos).NicClassIndex); output += tmp; } writeLog(output);
str.Format 錯誤 Buffer too small this
The call will fail if the string object itself is offered as a parameter to Format. For example, the following code will cause unpredictable results: code
CAtlString str = _T("Some Data"); str.Format(_T("%s%d"), str, 123); // Attention: str is also used in the parameter list.