重新启动后MoveFileEx不删除文件

时间:2020-11-02 03:37:11

标签: delphi winapi delphi-10.3-rio movefileex

有人可以解释为什么以下代码中的MoveFileEx在重启后不删除文件?谢谢。

program Project1;

{$APPTYPE CONSOLE}

{$R *.res}

uses
  Winapi.Windows,
  System.SysUtils;

var
  FileName: array[0..128] of Char;
  FileNameZip: string;

begin
  try
    GetModuleFileName(HInstance, FileName, 128);
    FileNameZip := IncludeTrailingPathDelimiter(GetEnvironmentVariable('USERPROFILE') + '\Downloads') + ChangeFileExt(ExtractFilename(FileName), '.zip');

    Writeln(FileName);
    Writeln(FileNameZip);

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

    if not MoveFileEx(PWideChar(FileNameZip), nil, MOVEFILE_DELAY_UNTIL_REBOOT) then
      SysErrorMessage(GetLastError);
  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.Message);
  end;
  Readln;
end.

0 个答案:

没有答案