Visual studio 2010 VS2010未将文件嵌入程序集

Visual studio 2010 VS2010未将文件嵌入程序集,visual-studio-2010,embedded-resource,Visual Studio 2010,Embedded Resource,由于某些原因,在VS2010中,我无法将任何文件嵌入到程序集中。这些文件应将其构建操作属性设置为Embedded Resource,但在执行程序集时找不到任何资源。例如,以下测试代码: string[]list=System.Reflection.Assembly.GetExecutionGassembly.GetManifestResourceNames; 字符串msg=list.Length>0?满:空; MessageBox.Showmsg; 始终显示空,因为GetManifestReso

由于某些原因,在VS2010中,我无法将任何文件嵌入到程序集中。这些文件应将其构建操作属性设置为Embedded Resource,但在执行程序集时找不到任何资源。例如,以下测试代码:

string[]list=System.Reflection.Assembly.GetExecutionGassembly.GetManifestResourceNames; 字符串msg=list.Length>0?满:空; MessageBox.Showmsg; 始终显示空,因为GetManifestResourceNames始终返回空列表

此问题影响使用nettiers的项目,在该项目中,特定情况下不方便将存储过程包含到数据库中,因此必须从procedures.xml文件中获取存储过程,顺便说一句,在生成类后,该文件会自动设置为Build Action=Embedded Resource,当然,当函数试图从中获取任何SQL脚本时,程序就会失败

我还创建了几个测试项目,尝试嵌入xml和gif,但始终没有成功

更新:问题似乎只是C.I在VB.Net中复制了测试项目,并且文件确实嵌入了其中。我注意到,在输出窗口中,在C的情况下,编译器命令行不包括/resource选项,该选项应该跟在要嵌入的文件名后面,而在VB的情况下,它会出现

是否有任何C的全局设置或配置文件我应该检查?项目的构建选项没有什么奇怪之处


有人知道可能发生的事情以及如何解决吗

最后,我找到了原因:

位于c:\WINDOWS\Microsoft.NET\Framework\v4.0.30319中的Microsoft.CSharp.targets文件中有一行错误。有一个标签写为:

而不是

正确写入恢复了嵌入文件的能力


那个F是怎么出现的,为什么那个文件一开始就被修改了,我不知道。。。尽管做了几年的.NET程序员,但今天我在网上搜索了这个问题后才意识到.targets文件,因为我从来没有必要查看MSBuild的内容。

我也遇到过类似的问题,它似乎与解决方案文件有关。关闭并重新打开解决方案后,我发现我添加的文件不再包含在我的项目中。在把它们重新加入后,它们开始工作了。VS2013