【问题标题】:how to detect file change VBS如何检测文件更改 VBS
【发布时间】:2014-02-16 00:57:19
【问题描述】:

我想制作一个 Visual basic 脚本控制台应用程序,如果文件已被修改,则该应用程序将打印已编辑。例如,如果我有一个包含一些注释的文本文件,并且我在编辑它时将它添加到一个文件夹中,程序会检查它所在的文件夹和文件,然后打印文件的名称并修改或未修改 我该怎么做呢?我对 Visual Basic 脚本比较陌生,我可能有 4 个月的基本经验。

    console.writeline("what do i do?")
    console.writeline("and how do i do it")

我正在尝试将其作为控制台应用程序,所以我希望看到的首选结果是

    File Checker
    test.txt - Edited
    test2.pptx - Un-edited
    etc etc etc

【问题讨论】:

  • 修改事件需要monitor文件。

标签: vbscript changelog


【解决方案1】:

如果您需要立即通知,WMI 可能是最佳途径。但是 WMI 还要求您的进程始终处于运行状态(处于阻塞状态)。或者,您可以安排一个 VBScript 以某个时间间隔启动,它可以对照文本文件或数据库检查每个文件的最后修改日期,该文本文件或数据库用于存储脚本上次运行时的修改日期。

一个更简单的解决方案是只检查自上次运行以来修改时间是否发生了变化。例如,如果您的脚本每 10 分钟运行一次,并且您发现一个文件在过去 10 分钟内发生了更改,请报告它。

With CreateObject("Scripting.FileSystemObject")
    For Each File In .GetFolder("c:\folder").Files
        If DateDiff("n", File.DateLastModified, Now) < 10 Then
            ' File has been modified in past 10 minutes.
        End If
    Next
End With

【讨论】:

    猜你喜欢
    • 2015-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-23
    相关资源
    最近更新 更多