2011-06-14 25 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速成是出...)