【问题标题】:Visual Studio 2010 Can't Find 'sgen.exe' [duplicate]Visual Studio 2010 找不到“sgen.exe”[重复]
【发布时间】:2013-05-07 17:31:47
【问题描述】:

我有一个 C# 程序集项目,我选择在 Visual Studio 2010 中构建它,该项目设置为自行序列化。当我尝试构建项目时,出现此错误:

错误1 指定任务可执行位置 “C:..\MyProjectName\bin\x64\Debug\sgen.exe” 无效。

有谁知道我该如何解决这个问题?

我需要将此程序集序列化以用于我的项目。现在有点历史。我正在使用的这台机器是新的,我碰巧在Visual Studio 2012之后安装了Visual Studio 2010的错误;不确定这是否是它找不到 sgen.exe 的原因。没有调用 sgen 的构建步骤,我很确定它是由 VS 作为构建周期的一部分完成的。其次,它试图在输出目录中查找 sgen ...我不明白它为什么要这样做,我认为 sgen 是一个安装在其他地方的框架组件。该项目在我的另一台计算机上成功构建。

【问题讨论】:

标签: c# .net visual-studio-2010 visual-studio sgen


【解决方案1】:

很可能是因为构建目标发生了变化。编辑您的 csproject 文件并尝试替换这些标签

<PropertyGroup>
    <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
    <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
  </PropertyGroup>
  <Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
  <PropertyGroup>
    <PreBuildEvent />
    <PostBuildEvent />
  </PropertyGroup>
  <Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />
  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />

【讨论】:

  • 谢谢,这成功了! .csproj 实际上包含 sgen 路径信息,所以我可以从那里拉出来 :)
猜你喜欢
  • 1970-01-01
  • 2012-04-20
  • 2014-12-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多