代码之家  ›  专栏  ›  技术社区  ›  Russ

vs 2010测试版2:无法运行“resgen.exe”

  •  5
  • Russ  · 技术社区  · 15 年前

    所以,我刚下载了vs 2010 beta 2,当我尝试用几个资源文件构建一个类库时,我得到了错误:

    无法运行指定的任务可执行文件“resgen.exe”。文件名或扩展名太长“

    在此之前,我得到警告: 警告4434“resgen”任务的命令行太长。超过32000个字符的命令行可能会失败。尝试将对“resgen”的调用分解为多个调用,每个调用的参数更少,从而缩短命令行的长度。

    这两个问题,我肯定告诉我确切的问题是什么,但它不是与我点击。因为这个组件在VSTS 2008中工作,所以我有点茫然。

    如果必要的话,我会用ms输入一个bug,但是我想先看看stackoverflow的集体智慧能为我做些什么。

    2 回复  |  直到 15 年前
        1
  •  2
  •   Jason    15 年前

    我也有同样的问题。我已在Microsoft Connect网站上提交此问题:

    https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=499196

        2
  •  1
  •   David Wengier    15 年前

    我将我的项目改为target.net 4,这个问题就消失了。

    虽然不是一个理想的解决方案,因为我们还没有准备好构建到.NET 4,但至少产品是可用的。

    更新:Microsoft已发布连接问题的更新:

    权变措施
    1)切换到目标4.0。显然,对于一个严肃的项目来说,这不是一个解决方法,但它可以将其用于实验。
    2)我没试过这个。进入\microsoft.common.targets并找到GenerateResource任务。首先备份文件。将条件属性更改为:
    条件=“'%(embeddedresource.type)'='resx'和'%(embeddedresource.generateresource)'!='false'和'%(embeddedresource.identity)'!=“”

    这个额外的子句应该使resgen在每个输入文件上单独运行,这将变慢,但应该避免这个问题。 丹

    我改变了注意到的情况,到目前为止一切都很好,同时仍然以.NET 3.5为目标。速度明显慢了:)