在编译期间监视文件复制

Posted

技术标签:

【中文标题】在编译期间监视文件复制【英文标题】:Monitor file copy during compilation 【发布时间】:2012-05-29 13:54:09 【问题描述】:

我曾经在我的项目中有一些构建后事件和构建事件之后, 我用它来复制文件。 我也有 CopyLocal = true。

我正在删除所有后期构建和构建事件之后,copylocal 现在等于 false。 有一些 dll 文件仍然会进入 bin 文件夹....

如何检测谁复制了这些文件?

谢谢。

【问题讨论】:

逐个禁用组件? 我有 205 个组件 :) 在 *.csproj 文件中查找复制的文件名。 我做到了,我跑了notepad++也没找到 【参考方案1】:

尝试从 Visual Studio 命令提示符和saving a verbose log 构建,这样您就可以搜索复制文件的名称并找出正在复制它们的项目:

msbuild <solution name> /l:FileLogger,Microsoft.Build.Engine;logfile=MyLog.log;verbosity=diagnostic

即使在 .csproj 文件中未按名称提及文件,这也会为您提供一些结果。

【讨论】:

以上是关于在编译期间监视文件复制的主要内容,如果未能解决你的问题,请参考以下文章

监视文件/目录的内容? [复制]

使用 NSFileManager 在复制文件期间更新进度条

FileSystemWatcher - 文件复制期间的 3 个事件

在 Maven 构建期间将文件夹从源复制到目标

发布期间 Visual Studio“无法复制文件”

MSBuild 在 _CopyOutOfDateSourceItemsToOutputDirectory 期间复制依赖项目文件