这个错误消息是什么意思?我能做些什么来纠正这个问题?

AssemblyInfo.cs退出,代码为9009


这个问题可能是在Visual Studio中的. net解决方案的构建后步骤中发生的。


当前回答

很可能在最终路径上有空间。

您可以通过引用路径来解决这个问题,从而允许使用空格。例如:

xcopy "$(SolutionDir)\Folder Name\File To Copy.ext" "$(TargetDir)" /R /Y /I

其他回答

实际上,我注意到由于某些原因,%windir%环境变量有时会被擦除。对我有用的是重新设置windir环境变量为c:\windows,重新启动VS,就是这样。这样可以避免修改解决方案文件。

另一个变体:

今天我在win32中从cron调用python解释器并取ExitCode (%ERRORLEVEL%) 9009,因为cron使用的系统帐户没有python目录的路径。

当找不到signtool.exe本身时,我实际上得到了这个错误消息。为了解决这个问题,我将文件夹路径添加到path环境变量中,并重新启动Visual Studio。

当您缺少使用Microsoft Visual Studio x86工具的一些环境设置时,就会发生这种情况。 因此,尝试在构建后的步骤中添加作为第一个命令:

使用Visual Studio 2010:

call "$(DevEnvDir)..\Tools\vsvars32.bat"

正如@FlorianKoch在评论中提到的,对于VS 2017的使用:

call "$(DevEnvDir)..\Tools\VsDevCmd.bat"

它应该放在任何其他命令之前。 它将为使用Microsoft Visual Studio x86工具设置环境。

我有同样的错误导致我的后构建脚本,我试图在命令提示符中逐行运行脚本。最后我发现根本原因是我没有填充.nuspec文件中缺失的信息,即将$和$之间的所有变量替换为实际值,例如将$author$替换为我的名字