visual-studio-2008 - Visual Studio 2008 中的批处理文件

标签 visual-studio-2008 msbuild

我需要有关 Visual Studio 2008 的一个非常令人沮丧的问题的帮助。
我有一个 C# 项目,在预编译阶段调用一个批处理文件,该文件将一些 dll 复制到项目本身的子目录中。经常会发生 Visual Studio 报告由批处理文件执行引起的错误:它说执行已终止,代码为 1。之后,重新编译项目的唯一解决方案是重新启动 Visual Studio。重新启动后,编译不会报告任何问题。
有没有人报告同样的问题?
你知道解决的方法吗?
非常感谢。

最佳答案

使用 <copy/>任务代替。这将为您提供更好的错误处理。

C:\SourceDir 复制所有 DLL 的示例至LocalDir :

<ItemGroup>
  <SourceFiles Include="C:\SourceDir\*.dll" />
</ItemGroup>
<Copy SourceFiles="@(SourceFiles )" DestinationFolder="LocalDir\" />

另请参阅MSDN CopyTask Reference .

根本原因可能是工作室本身仍然通过“Visual Studio 托管进程”打开程序集。您可以在项目属性中的“调试”、“启用 Visual Studio 托管进程”下禁用此功能。请参阅Debugging and the Hosting Process文章了解详细信息。

关于visual-studio-2008 - Visual Studio 2008 中的批处理文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2251983/

相关文章:

visual-studio-2008 - 预编译头

visual-studio-2008 - Silverlight 日历控件在哪里?

c++ - 如何避免硬盘抖动

asp.net - MSBuild不会生成PDB文件

tfs - TFS CI构建-构建成功后更新自定义定义变量

c++ - 在代码中捕获异常

c# - 使用具有多个配置的 msbuild 构建单个项目

jenkins - 让 Jenkins 了解自定义 NuGet 包源

c# - 如果我从 C# 代码构建解决方案,我如何知道实际构建了哪些应用程序?

c# - 如何在 Visual Studio/C# 中定义 DLL 依赖项的工作目录