0

次のようにPythonコードで.docxファイルを監視しようとしています

    hDir = win32file.CreateFile (
  dirPath,
  FILE_LIST_DIRECTORY,
  win32con.FILE_SHARE_READ | win32con.FILE_SHARE_WRITE,
  None,
  win32con.OPEN_EXISTING,
  win32con.FILE_FLAG_BACKUP_SEMANTICS,
  None
)

while 1:
    # Wait for a change to occur
    results = win32file.ReadDirectoryChangesW (
                                               hDir,
                                               1024,
                                               False,
                                               win32con.FILE_NOTIFY_CHANGE_LAST_WRITE,
                                               None,
                                               None
                                               )

ファイルに加えられた変更をキャプチャしようとすると、ファイル名に ms word 文書の一時ファイル名が表示されます。これらの一時ファイルの変更を Python でキャプチャする方法。

4

1 に答える 1

0

これは、次のコードで機能します。FILE_NOTIFY_CHANGE_SECURITY イベントを監視できれば、すべての一時ファイルの変更も追跡できます。

 readFlags = win32con.FILE_NOTIFY_CHANGE_FILE_NAME  | \
        win32con.FILE_NOTIFY_CHANGE_DIR_NAME   | \
        win32con.FILE_NOTIFY_CHANGE_ATTRIBUTES | \
        win32con.FILE_NOTIFY_CHANGE_SIZE       | \
        win32con.FILE_NOTIFY_CHANGE_LAST_WRITE | \
        win32con.FILE_NOTIFY_CHANGE_SECURITY
# Wait for new data and call ProcessNewData for each new chunk that's written
while 1:
    # Wait for a change to occur
    results = win32file.ReadDirectoryChangesW (
                                               hDir,
                                               1024,
                                               False,
                                               readFlags,
                                               None
                                               )
于 2013-09-25T04:50:42.863 に答える