2013-10-13 51 views
0

在使用VS(2010)时,我曾经能够添加图像作为资源,只需转到Resource视图,然后:Right click project > Add > Resource > Import即可。
我甚至问过关于如何加载它的问题:Loading an image from a resource embedded in a dll,但由于某种原因而改变。将图像作为资源嵌入到FireBreath插件中

现在,当我尝试同样的事情,并保存.rc文件,我得到这个消息:

“资源脚本FILE_PATH.rc不使用Microsoft Visual Studio创建
评论,宏预处理程序指令和 有条件地包含的信息可以在构建过程中修改和/或从 这个文件中删除。替换现有文件?

即使我点击“是”(为了只是测试的东西),然后我得到的所有类型的错误消息在编译时:

ResourceCompile:

根\ firebreathWin.rc (8):错误RC2144:PRIMARY LANGUAGE ID不是数字

根\ firebreathWin.rc(16):错误RC2135:未找到文件VS_VERSION_INFO

等等

我有两个问题:

  1. 什么是添加将被添加到使用C进行编译插件的图像资源的正确方法是什么?我搜索了它并找不到任何帮助信息。

  2. 这种行为变化的原因是什么?因为我之前可以使用相同的确切步骤,并且能够正常工作。

谢谢。

回答

0

首先,我不会这样做;相反,我只是将该文件放在与您的DLL相同的目录中,并使用DLL的路径来找到它。

也就是说,执行此操作的“正确”方法是查看.rc文件在IDE中添加时所做的更改,从firebreath的根目录中的gen_templates /复制.rc文件目录插入到您的项目中,然后将这些更改复制到您的文件副本中。只要cmake文件(CMakeLists.txt,* .cmake)发生更改,任何时候再次运行cmake都会覆盖对生成文件所做的任何更改。

+0

但我想打包我的插件,并有人下载它。我想在插件中使用一些图片,这会让事情变得更加复杂,让用户下载它。除非我错过了一些东西。至于“正确”的方式,那正是我所做的,我在'FireBreath/gen_templates'目录中更改了'firebreathWin.rc'和'resource.h',但这会影响我所有的FB项目......可以'我在项目中本地执行此操作吗? –

相关问题