程序启动时检查新文件

时间:2016-09-15 06:33:35

标签: vb.net

我需要为一个适用于某些文件的程序编写.dll。

我需要编写代码,每当有人启动程序时,它应该在文件夹中检查新文件,如果有新文件,它应该自动将它们复制到程序文件夹中并重新启动程序。如果没有,程序应该正常启动。

我的问题是我不知道如何让程序识别自上次启动/关闭程序以来的新文件,因为我不希望在程序运行的整个过程中监视文件夹,但仅在开始时该计划。

我想过比较2个文件夹中的文件,但是对于houndreds文件来说,这样做会很糟糕,不是吗?

除此之外,如果有人知道如何自动复制文件并且也可以给我一个想法,那就太棒了。

我对vb.net很新,只对编码经验有限,所以如果我提出一些简单的问题,请原谅我。

非常感谢每一个想法和答案。谢谢!

更新:非常感谢你们的想法,要测试其中一些:)

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

你可以尝试这种方法。

我使用这种方法将我的文件备份到我们的服务器中。

这将检查现有文件的新文件和更新日期版本(如果有),然后覆盖它。

我在CurrentApp.LicenseInformation

中使用了XCopy命令

创建batch file非常基本。

  • 打开记事本
  • 粘贴此命令:batch files
  • 保存扩展名为XCopy "C:\YourSourceFolder\*.*" "D:\YourDestinationFolder" /D /S /Y
  • 的文件

关于.bat

的说明
  • XCopy指定目录中的所有文件都是 复制。
  • *.*表示只复制源时间较新的文件 比目的地时间。
  • /D将复制目录和子目录,但空目录除外。
  • /S覆盖现有文件而不提示

来源:here

现在,通过/Y运行它只需要一行代码。您可以将其放在VB.NetButton_Click或您喜欢的任何事件中。

Timer_tick

当然,目录仍然会根据您保存System.Diagnostics.Process.Start("C:\YourBatFile.bat") 文件的位置而有所不同。

来源:MS-DOS XCopy Command

在您的情况下:您可以使用.bat在您偏好的时间间隔内执行此timer