2010-11-02 18 views
0

根據我對上一個問題的回答,我想再問一個關於該主題的內容。Windows PE資源(前一個問題的擴展)

到了本週,我相信窗口後面的所有圖形實際上就是代碼。爲了創建窗口,菜單,按鈕,我認爲所有的只是一個將一些參數傳遞給OS的函數。但是,我發現了一些有關資源的信息。從我在互聯網上發現的很少,我相信編譯器實際上尋找創建圖形的特定函數,並將它們和它們的數據結構保存到PE文件中的其他代碼中。

它處理它們的方式與其他代碼不同。我想問,爲什麼?我的意思是,爲什麼不只是有爲此調用WinAPI的函數呢?謝謝。

編輯:甚至如何甚至可以例如C編譯器拆除程序資源和其他代碼?

我一直認爲任何C編譯器,即使是Windows之前的舊編譯器,當由CRT和WinMain函數啓動代碼提供時,都可以生成適當的代碼以在Windows上運行。只需知道PE結構,只需要代碼和數據部分...

回答

2

資源只是數據。數據不具備任何改變窗口外觀的功能。這需要使用數據的代碼。這些代碼是否存在於Windows或程序中並不重要。它仍然是代碼。

所以,是的,這是完成工作的所有代碼。如果它不是你寫的代碼,那麼你做得對。而且不必保持。