Exec

From Delphi & Pascal (česká wiki)
Jump to navigation Jump to search

Vykoná určený program s určenou příkazovou řádkou.

Deklarace
procedure  Exec(Path, CmdLine: string);
Režim
Reálný, Chráněný
Poznámky
Chyby jsou hlášeny v DosError.
Pokud překládáte program, který používá Exec, zmenšete maximální velikost haldy; jinak se Exec může vrátit s chybou nedostatku paměti (DosError = 8).


Viz také
DosError
DosExitCode
SwapVectors


Vzorový příklad

 { DOSXCODE.PAS }
 { Vzorový příklad pro DosExitCode a Exec }
 {$M $4000,0,0 }   { 16K zásobník, žádná halda }
 uses Dos;
 var
   ProgramName, CmdLine: string;
 begin
   Write('Program (úplná cesta): ');
   ReadLn(ProgramName);
   Write('Příkazový řádek programu ', ProgramName, ': ');

   ReadLn(CmdLine);
   WriteLn('Do Exec...');

   SwapVectors;
   Exec(ProgramName, CmdLine);
   SwapVectors;

   WriteLn('...zpět z Exec');
   if DosError <> 0 then{ Chyba? }
     WriteLn('Chyba DOSu #', DosError)
   else
     WriteLn('Exec úspěšný. ', 'Výstupní kód synovského procesu = ', DosExitCode);
 end.