MoveFileEx(PChar('D:\1.exe'),PChar('C:\2.exe'),MOVEFILE_REPLACE_EXISTING);
这样可以移动D盘中正在运行中的1.exe但是移动自己就不行,求解?
MoveFileEx(PChar(paramstr(0)),PChar('C:\2.exe'),MOVEFILE_REPLACE_EXISTING);

解决方案 »

  1.   


    MOVEFILE_REPLACE_EXISTING or MOVEFILE_COPY_ALLOWED
      

  2.   

    你新文件和旧文件不在同一个卷下,如果在同一个卷下,是可以移动自身的,正在运行的程序是不能移动到不同卷下的,你可以看一下api的帮助中的有关说明
      

  3.   

    本帖最后由 bdmh 于 2010-09-21 13:51:04 编辑
      

  4.   

    procedure TForm1.FormCreate(Sender: TObject);
    begin
      MoveFileEx(PChar(paramstr(0)),PChar('C:\2.exe'),MOVEFILE_REPLACE_EXISTING);
    end;end.不行啊,控制台工程也是一样。
      

  5.   

    用GetLastError看一下返回错误代码