delphi – 如何在我的程序下次重启之前延迟文件删除?

delphi – 如何在我的程序下次重启之前延迟文件删除?,第1张

概述我的应用程序需要删除一些文件,但这应该发生在下一个Windows启动之前. 我现在正在做的是在RunOnce注册表项中写入此字符串值: Command.com /c del c:\some file.ext 但我观察到嵌入空间的路径存在问题.我不得不说我也试过这个: Command.com /c del "c:\some file.ext" 但这并没有解决问题,但最糟糕的是:不删除任何文件,无论嵌 我的应用程序需要删除一些文件,但这应该发生在下一个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 – 如何在我的程序下次重启之前延迟文件删除?全部内容,希望文章能够帮你解决delphi – 如何在我的程序下次重启之前延迟文件删除?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/langs/1279327.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存