AFX_IDP_PARSE_INT
是標準MFC錯誤消息(它在afxres.h中定義)的標識,但在我的項目中未能加載,這意味着LoadString
返回FALSE
,GetLastError
返回ERROR_RESOURCE_NAME_NOT_FOUND
,CString保持空白。LoadString(AFX_IDP_PARSE_INT)在mfc exe中失敗(不在dll中)
發生這種情況甚至當我嘗試InitInstanse的開始加載它:
BOOL CMyLegacyProject::InitInstance()
{
CString string;
if (!string.LoadString(AFX_IDP_PARSE_INT))
AfxMessageBox(_T("Failed."));
}
此相同的代碼工作。但是一個新的項目, - MFC的相同的連接(我鏈接到它靜態),同樣WINVER ,我試着將它與我的舊項目做得相似,但我無法在新開始的項目上重現錯誤。
可能意味着你在代碼中有一個錯誤在其他地方。我會嘗試系統地從舊項目中刪除代碼,直到錯誤消失。當它消失時,您刪除的最後一段代碼可能是錯誤代碼。我會從出現此錯誤時上次處理的代碼開始。 – john 2012-08-08 10:11:22
你可以檢查'GetLastError'來看它是否返回可能相關的東西嗎? – 2012-08-08 10:12:37
它返回ERROR_RESOURCE_NAME_NOT_FOUND。 – sashoalm 2012-08-08 10:57:33