Visual Studio 2012 - 无法运行指定的任务可执行文件"LC.exe"



我正在使用VS 2012开发SharePoint 2013解决方案,该解决方案有一个licx文件。我收到一个编译时错误和警告。

错误:指定的任务可执行文件"LC.exe"无法运行。文件名或扩展名太长

警告:"LC"任务的命令行太长。超过32000个字符的命令行可能会失败。尝试通过将对"LC"的调用分解为多个调用来减少命令行的长度,每个调用的参数更少。

我已经尝试过lc.exe.config具有<startup useLegacyV2RuntimeActivationPolicy="true">我还尝试将解决方案移动到"C:\",它位于Projects文件夹的早期位置。

我仍然无法解决此错误。

有MS支持的解决方法:

生成项目时,从项目中删除许可证文件每次你得到这个错误,只需删除许可证文件

https://connect.microsoft.com/VisualStudio/feedback/details/779433/lc-exe-task-command-line-too-long

您可以通过创建指向所使用的特定.NET版本的快捷方式(在本例中为4.5.2)来节省大量路径长度。以下是步骤;

  1. 以管理员身份运行命令行
  2. 转到命令行中的C:\
  3. mklink/J net452"C:\Program Files(x86)\Reference Assemblys\Microsoft\Framework\.NETFramework\v4.5.2"
  4. 转到VisualStudio
  5. 打开项目属性
  6. 查看"参照"选项卡
  7. 单击"参考路径"按钮并添加路径"C:\net452"
  8. 重建项目

删除licenses.licx文件不是一个解决方案。如果您使用需要许可证的第三方控制,它将在运行时给您带来错误。

LC.exe将参数作为具有完整路径的许可证文件,如果参数太长,则会引发错误。

因此,保持文件名和路径的长度更短,它将编译并工作。

删除许可证文件对我没有帮助。我最终删除了Solution Explorer->Properties组下的"licenses.licx"这确实有助于

根据此次GitHub签入,VS2017中修复了此问题:https://github.com/Microsoft/msbuild/commit/e49717c727c3cab4db466bcb0a5abb624a8156bb我相信这个版本是完整发布的版本是VS2017更新2。

相关内容

  • 没有找到相关文章

最新更新