如何取消延期的MoveFileEx操作?

我使用下面的命令在重启机器后删除一些文件:

MoveFileEx(PChar(File_Address), Nil, MOVEFILE_DELAY_UNTIL_REBOOT); 

我怎样才能取消这个命令的执行,并防止在重新启动后删除文件?

您以这种方式进行删除的文件将放在HKLM\System\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations下的注册表中。 也许你可以从那里删除条目,以防止文件被删除。 我找不到这个API函数。

我想你可以复制文件(因为它还没有被删除),然后使用

 MoveFileEx(copy_of_file, original_file, MOVEFILE_DELAY_UNTIL_REBOOT) 

在重新启动过程中将其恢复原状。

正如肯·怀特(Ken White)所指出的那样,首先避免这种情况要好得多。