Как заставить запускаться из определенной папки?

Приведенный пример кода проверяет из какой папки запущена программа, если она запущена не из корневой - то переносит себя в корень и запускается оттуда.

program Project1;

{©Drkb v.3(2007): <a href="http://www.drkb.ru" title="www.drkb.ru">www.drkb.ru</a>,

 ®Vit (Vitaly Nevzorov) - nevzorov@yahoo.com}


uses

Forms, classes, windows, Sysutils, ShellApi,

Unit1 in 'Unit1.pas' {Form1};

{$R *.RES}

var f:textFile;

FileName:String;



begin

if paramstr(1)<>'/runasis' then

begin

CopyFile(PChar(Paramstr(0)),PChar('c:\'+extractFilename(paramstr(0))),True);

shellexecute(0, 'Open', PChar(extractFilename(paramstr(0))), '/runasis', 'c:\',sw_restore);

FileName:=changefileext(paramstr(0),'.bat');

assignFile(f,FileName);

rewrite(f);

writeln(f,':1');

writeln(f,format('Erase "%s"',[paramstr(0)]));

writeln(f,format('If exist "%s" Goto 1',[paramstr(0)]));

writeln(f,format('Erase "%s"',[FileName]));

closefile(f);

ShellExecute(0, 'Open', PChar(FileName), nil, nil, sw_hide);

end

else

begin

Application.Initialize;

Application.CreateForm(TForm1, Form1);

Application.Run;

end;

end.

Автор: Vit (www.delphist.com, www.drkb.ru, www.unihighlighter.com, www.nevzorov.org)
Взято с Vingrad.ru http://forum.vingrad.ru

Отправить комментарий

Проверка
Антиспам проверка
Image CAPTCHA
...