C++ Visual Studio 2012 Express-图像不可用';我不能被编译/复制

C++ Visual Studio 2012 Express-图像不可用';我不能被编译/复制,c++,C++,也许这里有人能帮我。我是一个业余程序员,主要在C#方面有经验 我最近几天开始研究C++,遇到了一个我无法理解的问题。我正在使用Microsoft Visual Studio 2012 Express for Windows桌面 每当我通过解决方案资源管理器向解决方案中添加资源(例如图像(jpg、png、bmp))时,它们不会被复制到硬盘上的解决方案文件夹中。更大的问题是,当我编译我的项目时,这些图像没有被复制/编译!!因此,程序无法运行。如果我手动将文件复制到Debug文件夹中,一切正常。我将文

也许这里有人能帮我。我是一个业余程序员,主要在C#方面有经验

我最近几天开始研究C++,遇到了一个我无法理解的问题。我正在使用Microsoft Visual Studio 2012 Express for Windows桌面

每当我通过解决方案资源管理器向解决方案中添加资源(例如图像(jpg、png、bmp))时,它们不会被复制到硬盘上的解决方案文件夹中。更大的问题是,当我编译我的项目时,这些图像没有被复制/编译!!因此,程序无法运行。如果我手动将文件复制到Debug文件夹中,一切正常。我将文件属性中的“Content”属性以及“addtoproject”属性设置为True

我一辈子都搞不懂这个(在MSVisualStudio2010Express C中,它总是有效的。在新版本中我是否缺少一些东西

顺便说一句,如果其中一些没有任何意义的话,很抱歉。英语不是我的母语,我正在使用德语的Visual Studio

希望有人能给我一个答案

致以最良好的祝愿


< P>米迦勒< /P> < P>在解决方案资源管理器中右击文件并选择“属性”。然后将“复制到输出目录”改为“总是”。也可能将“生成动作”改为“内容”。

< P>在Visual Studio 2013中的C++项目中,我也遇到了同样的问题。我找不到“如果更新的副本”或“总是复制”。选项。如果C++中有一个让我知道。< /P> 为了解决这个问题,我编辑了[Projectname].vcxproj文件

找一条这样的线:

<None Include="./yourcontentfile.dll" />


将该行更改为以下内容:

<None Include="./yourcontentfile.dll">
  <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>

保存最新


保存最新

这将在您构建时将该文件复制到输出目录。

嘿,Vilx,谢谢您的回复。这也是我在VS 2010中记得的。这也是我在这里尝试过的。但当我像您所说的那样打开文件的“属性”时,我只有三个选项/设置。“从构建中排除:是/否”、“内容:是/否”和“元素类型”:.Exlude from Build设置为No,Content设置为Yes,Element Type自动设置为image。希望这是有意义的。正如我所说,我正在使用德语版本并尝试翻译此内容。请确保按照中的说明进行操作:若要添加现有资源并在解决方案资源管理器中选择项目,请在“项目”菜单上单击“属性”选择“资源”选项卡。在“资源设计器”工具栏上,指向“添加资源”,单击箭头,然后单击“添加现有文件”。在“将现有文件添加到资源”对话框中,浏览到包含要添加的资源的文件(.bmp、.ico、.wav等),然后点击打开…@迈克尔:哦……那好吧。那我就没主意了P@duDE-那些是在.exe(或.dll)文件中编译的资源,它们与OP想要的完全不同(即,将某个文件复制到输出目录)。我认为不是他写的“它们不会被复制到硬盘上的解决方案文件夹中”,“因此,程序无法运行”-或者你的确切意思是什么,Michael?
<None Include="./yourcontentfile.dll">
  <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<Content Include="./yourcontentfile.dll">
  <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>