gpt4 book ai didi

delphi - 如何将文件删除延迟到下次从程序重新启动之前?

转载 作者:行者123 更新时间:2023-12-03 14:55:03 25 4
gpt4 key购买 nike

我的应用程序需要删除一些文件,但这应该在下次 Windows 启动之前发生。

我现在要做的是将这个字符串值写入 RunOnce 注册表项:

Command.com /c del c:\some file.ext

但我观察到带有嵌入空格的路径存在问题。我不得不说我也尝试过这个:

Command.com /c del "c:\some file.ext"

但这并不能解决问题,反而使情况变得更糟:无论嵌入的空格如何,都不会删除任何文件!

从程序中删除延迟到下次重新启动的文件的正确方法是什么?

谢谢。

最佳答案

不要使用RunOnce,也不要使用Command.com。如果您坚持使用某些内容,请改用 %COMSPEC%/c。不过,您有更好的选择。

使用MoveFileEx改为使用 MOVEFILE_DELAY_UNTIL_REBOOT 标志:

if not MoveFileEx(PChar(YourFileToDelete), nil, MOVEFILE_DELAY_UNTIL_REBOOT) then
SysErrorMessage(GetLastError);

关于delphi - 如何将文件删除延迟到下次从程序重新启动之前?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5490658/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com