2014-10-09 66 views
1

我想在我的Windows可執行文件中嵌入圖像文件。我發現的最簡單的方法是使用Windows資源文件。Windows資源文件如何工作?

我使用visual studio生成了resource.rc和resource.h。下一步是在我的源代碼中調用這些資源。資源文件背後究竟發生了什麼?

在文本編輯器中打開.rc文件可以顯示資源名稱和實際圖像文件的路徑。在Visual Studio中打開資源顯示巨大的字符數組。

這些字符數組在哪裏存儲?他們什麼時候生成?

回答

2

祕密非常簡單。它基於信息存儲在目標文件(如COFF)和PE文件(exe和dll)中的方式。這些文件包含用於存儲數據的部分 - 其中包括圖像和聲音文件等二進制數據。資源文件利用了這一點。當你的資源編譯器編譯你的資源文件時,它只是在編譯的資源文件中存儲二進制文件(圖像,聲音,圖標,電影,動畫等)和其他數據(如菜單,對話框,加速器,字符串表)並將該文件傳遞給鏈接器。鏈接器然後選擇適當的部分將其放置在輸出文件中。