所以,我刚刚下载了VS2010Beta2,当我尝试用几个资源文件构建我的一个类库时,我得到了错误:
“无法运行指定的任务可执行文件"ResGen.exe”。文件名或扩展名太长“
在此之前,我收到警告:警告4434 "ResGen“任务的命令行太长。超过32000个字符的命令行可能会失败。尝试缩短命令行的长度,方法是将对"ResGen“的调用分解为多个调用,每个调用的参数较少。
这两个,我肯定告诉我确切的问题是什么,但它不符合我。因为这个程序集在VSTS 2008中工作,所以我有点不知所措。
如果有必要,我会在MS中输入一个bug,但我想先看看stackoverflow的集体智慧能为我做些什么。
发布于 2009-10-20 23:27:15
我也遇到了同样的问题。我已经在Microsoft Connect网站上提交了这个问题:
https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=499196
发布于 2009-10-23 13:20:38
我将我的项目改为以.NET 4为目标,这个问题就消失了。
虽然不是一个理想的解决方案,因为我们还没有准备好构建到.NET 4,但至少产品是可用的。
更新: Microsoft发布了连接问题的更新:
解决方法
1)切换到target 4.0。显然,这不是一个严肃项目的变通方法,但它为实验修复了它。
2)我没有尝试过这个。进入\microsoft.common.targets并找到GenerateResource任务。首先对文件进行备份。将条件属性更改为:
Condition="'%(EmbeddedResource.Type)‘== 'Resx’和'%(EmbeddedResource.GenerateResource)‘!= 'false’和'%(EmbeddedResource.Identity)‘!= ''“
额外的子句应该让resgen在每个输入文件上单独运行,这样会更慢,但应该可以避免这个问题。丹
我改变了上面提到的条件,到目前为止一切都很好,同时仍然以.NET 3.5为目标。它的速度要慢得多:)
https://stackoverflow.com/questions/1591066
复制相似问题