如何让我的Delphi 7程序将自己保存到新位置。例如,程序保存在我的闪存棒上,然后当我运行它时,我希望它将自己保存在c:\ user \(用户名)
以上是原始问题。
这是我尝试使用的代码。该程序运行完美,但当我检查文件夹它应该保存在它不会出现在那里。
procedure TForm5.FormActivate(Sender: TObject);
var source, dest : string;
begin
Source := 'project1.exe';
Dest := 'C:\Users\Craig\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup';
CopyFile(PChar(Source), PChar(Dest), False);
end;
感谢您的帮助。
答案 0 :(得分:3)
从Application.ExeName中读取可执行文件名。然后调用CopyFile来执行复制。
Source := Application.ExeName;
Dest := ...;
CopyFile(PChar(Source), PChar(Dest), False);
关于您的更新:
CopyFile
的API函数时,您需要检查返回值。你想要这样的东西:
Source := 'project1.exe';
Dest := 'C:\Users\...\Startup\project1.exe';
if not CopyFile(PChar(Source), PChar(Dest), False) then
RaiseLastOSError;
答案 1 :(得分:0)
试试这个:
CopyFile(PChar(C:\OldFile.exe), PChar(C:\NewFile.exe), true);