FileInfo sourceFile = new FileInfo(source + "\\" + fileName);
if(sourceFile.Exists) {
FileInfo destFile = new FileInfo(destination + "\\" + fileName);
if (destFile.Exists && destFile.LastWriteTime >= sourceFile.LastWriteTime)
{
//Using log4net
log.Info("Current " + fileName + " is newer than the one on the server.");
return false;
}
}
查看日志,似乎有时
LastWriteTime
未检测到源文件的更新版本(更新时发生事件)。我是否有可能把写时间和修改时间搞混了?有人知道如何做到这一点吗?
编辑(并复制我的评论):
我复制的文件大部分是我控制的DLL文件。它们是应用程序“growlforwindows”的程序集;它们定义自定义显示。我的应用程序的目的是检查网络共享以查看是否有更新的版本可用,并在需要时在本地复制该版本。这样,我们可以帮助确保所有客户使用最新的显示器。
好吧,我在加载程序集时遇到了另一个问题。似乎您不能两次加载同一个文件,即使它们来自不同的位置,当它们通过
Assembly.ReflectionOnlyLoadFrom
.