我想在我的程序遇到Win32錯誤時顯示有意義的錯誤消息。我打電話GetLastError
,然後FormatMessage
。但是一些錯誤消息包含佔位符。例如,ERROR_BAD_EXE_FORMAT
有以下文本:如何處理Win32錯誤消息的佔位符?
%1不是有效的Win32應用程序。
推測,%1被替換爲無效的模塊名稱。我如何影響替換?
請注意,我會理想喜歡一個通用的解決方案,因爲我注意到,佔位符有很多錯誤。我可以在文檔中看到以下消息:
- 錯誤的軟盤在驅動器中。將%2(卷序列號:%3)插入驅動器%1。
- 操作系統無法運行%1。
- 此版本的%1與您正在運行的Windows版本不兼容。檢查您計算機的系統信息,然後聯繫軟件發行商。
- 圖像文件%1已簽名,無法修改。
- 系統無法在%2的消息文件中找到消息號爲0x%1的消息文本。
- ...等等。
相關http://blogs.msdn.com/b/oldnewthing/archive/2007/11/28/6564257.aspx –
@AlexK。 *它也讓我感到迷惑,即系統錯誤消息包含%1的插入,您只需要逐個「知道」插入。 -Raymond *不是很令人鼓舞。 –