Visual studio 2012 指定的任务可执行文件";LC.exe“;无法运行
我正在使用VS 2012开发SharePoint 2013解决方案,该解决方案有一个licx文件。我得到一个编译时错误和一个警告 错误:无法运行指定的任务可执行文件“LC.exe”。文件名或扩展名太长 警告:“LC”任务的命令行太长。超过32000个字符的命令行可能会失败。尝试减少命令行的长度,方法是将对“LC”的调用分解为多个调用,每个调用的参数更少 我已经尝试了lc.exe.config的Visual studio 2012 指定的任务可执行文件";LC.exe“;无法运行,visual-studio-2012,sharepoint-2013,licenses.licx,Visual Studio 2012,Sharepoint 2013,Licenses.licx,我正在使用VS 2012开发SharePoint 2013解决方案,该解决方案有一个licx文件。我得到一个编译时错误和一个警告 错误:无法运行指定的任务可执行文件“LC.exe”。文件名或扩展名太长 警告:“LC”任务的命令行太长。超过32000个字符的命令行可能会失败。尝试减少命令行的长度,方法是将对“LC”的调用分解为多个调用,每个调用的参数更少 我已经尝试了lc.exe.config的 我还尝试将解决方案移动到“C:\”,它位于项目文件夹的前面 我仍然无法解决此错误。有MS支持解决方案:
我还尝试将解决方案移动到“C:\”,它位于项目文件夹的前面
我仍然无法解决此错误。有MS支持解决方案: 生成项目时,请从项目中删除许可证文件 每次出现此错误时,只需删除许可证文件
删除许可证文件对我没有帮助。我最终删除了解决方案资源管理器->属性组下的“licenses.licx”
显然,帮助删除licenses.licx文件不是一个解决方案。如果您使用的是需要许可证的第三方控件,则在运行时会出现错误 LC.exe将参数作为具有完整路径的许可证文件,如果参数太长,将抛出错误
因此,请保持文件名和路径长度较短,它将编译并工作。根据此GitHub签入,此问题在VS2017中已修复:
我相信该版本是完全发布的版本是VS2017 Update 2。您可以通过创建指向所使用的特定.NET版本(本例中为4.5.2)的快捷方式,在路径长度上节省大量资源。以下是步骤
如果我从正确编译的项目中删除此引用,则这似乎与Microsoft.SharePoint.dll有关。但是我不能没有SharePoint API…可能的重复如果您要复制粘贴来自同一问题的另一个问题的答案,请思考“我是否应该在此重复问题上发布重复答案,或者我是否应该不回答,而是将此问题标记为重复”-然后选择后者。尽量保持干净,每一点都有帮助。如果必须运行许可证组件来许可第三方组件(例如发布版本),则这不是一个有效的解决方案。不幸的是,这只是一个解决方案,而不是长期解决方案。Microsoft需要解决lc.exe程序的可伸缩性问题。同样,只有在解决方案足够小的情况下,这才有效。对于具有lc.exe依赖组件的较大解决方案,您的基本路径将开始成为较小的因素。