2011-06-14 51 views
1

我正在使用VC++ 2005 Express,它沒有資源編輯器。因此,我想知道是否有手動使用資源的方法?我真的必須製作一個.rc文件才能使用資源嗎?我的意思是,我不能像fstream C++那樣導入它嗎?如何手動使用資源?

+0

您正在使用的答案掙扎的原因是,這個問題還不清楚。添加更多細節以獲得更好的答案。 – 2011-06-14 14:28:53

回答

1

我會建議ResHacker或爲建設資源文本編輯器和GoRC編譯他們

0

如果你想這樣做硬盤的方式,在Windows API提供functions for both reading and writing resources。看看UpdateResource

+0

問題是我如何在外部加載它們?更新函數只更新模塊內部的資源文件,規定我們有一個資源文件的句柄。如何創建文件url以外的句柄? – biloon 2011-06-14 13:15:45

+0

@biloon:什麼樣的資源?如果您不想將您的內容嵌入到應用程序中,通常根本不使用資源,而是收集鬆散文件。無論如何,你從'BeginUpdateResource'獲得句柄,你需要一個本地文件名,而不是一個URL。 – 2011-06-14 13:17:10

+0

好吧,我有點明白你的意思,但如果我的理解錯誤,請糾正我。資源文件是內部數據文件並保留在可執行文件或庫中。因此,在編譯期間,我必須以某種方式將它加載到可執行文件中。但是,我不知道如何加載它們,因爲UpdateResource需要我提供一個指向資源文件的指針,我不知道如何獲取它。 – biloon 2011-06-14 13:27:59

0

完整回答這個問題取決於你要創建的資源類型。爲窗口和對話框中的一個選項是完全忽略資源,創造你需要RegisterClassExCreateWindowSetWindowLongPtr和幾個其他的功能是什麼。

有時候這條路感覺比使用資源文件如果要創建可調整大小的內容更容易。

+0

如果您有一個現有的框架來處理它,則可調整大小的內容不一定很難:http://stackoverflow.com/questions/138040/how-to-create-a-resizable-cdialog-in-mfc/5739620#5739620 – 2011-06-14 15:34:57

1

兩個選擇:

  • 你可以下載完整Windows SDK,這是免費的,包含了官方的C和C++編譯器,以及資源編譯器。
  • 如果你是一名大學生,你可以從MSDNAA下載完整版的Visual Studio。
  • 如果你是一個學生,在MSDNAA不可用,您仍然可以從DreanSpark得到完整的副本。
  • 您可以購買Visual Studio的完整版本 - 我假設這可能是成本高昂的。

假設您使用Windows SDK路徑,您將編寫資源腳本並將其傳遞給rc tool

(不知道爲什麼你還在使用2005速成但考慮到2010速成是出...)