msbuild - Visual Studio 预构建事件检查目录(和文件)是否存在,如果存在则将其删除

标签 msbuild visual-studio-2015 prebuild

每次我进行构建时,我都希望发生此预构建事件:

del  $(ProjectDir)\obj\Debug\Package\PackageTmp\web.config

如果目录在那里,这工作正常。但是如果该目录不存在,则会导致构建失败。我尝试做这样的事情来检查目录是否在那里:
if Exists('$(ProjectDir)\obj\Debug\Package\PackageTmp\')   
del  $(ProjectDir)\obj\Debug\Package\PackageTmp\web.config

但我相信我的语法是错误的,因为我得到了 255 的退出代码。让它工作的正确方法是什么?

谢谢!

最佳答案

显然这有效:

if EXIST "$(ProjectDir)\obj\Debug\Package\PackageTmp\web.config" (
del  "$(ProjectDir)\obj\Debug\Package\PackageTmp\web.config"
)

上面的代码是我尝试这样做的第一种方法。但它一直失败。经过多次尝试,我最终重新启动了 Visual Studio 2015 并再次输入该代码,然后它开始工作。

关于msbuild - Visual Studio 预构建事件检查目录(和文件)是否存在,如果存在则将其删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35136320/

相关文章:

asp.net - MSBuild/WebDeploy - 如何防止它删除文件夹及其内容

git - 如何在 Visual Studio 2015 中从 Git 获取特定版本?

android - 将文件夹中结构化的预建文件集添加到 android out 文件夹

visual-studio - NuGet TypeScript 工具 :Why the added version of typescript compiler is still not available?

visual-studio - C++ (vcxproj) 项目是否可以引用 net5.0 C# 项目

c# - "Enable Debugging of Unmanaged Code"在哪里可以在系统运行时编辑代码?

.net - 如何从另一个项目中引用 ASP.NET 5 项目?

jenkins - 有没有办法为 Jenkins 管道添加预构建步骤?

c# - 预构建 MSBuild 任务以更新与构建的 exe 不同步的 AssemblyInfo

msbuild - 我可以从 MsBuild Task 类中访问 MsBuildWorkspace 吗?