Mam taki problem. Chce uruchomić plik wsadowy cos.bat ale za bardzo nie wiem jak to zrobic wpisuje exec('cos.bat'.''); ale moze robie cos zle?? za bardzo nie umiem sie poslugiwac ta procka. POMOCY !!!
0
0
to spróbuj command.com /c cos.bat
0
Nie działa... Ale thx :)
0
masz w helpie przykład:
{$M $4000,0,0 } { 16K stack, no heap }
uses Dos;
var
ProgramName, CmdLine: string;
begin
Write('Program to Exec (full path): ');
ReadLn(ProgramName);
Write('Command line to pass to ',
ProgramName, ': ');
ReadLn(CmdLine);
WriteLn('About to Exec...');
SwapVectors;
Exec(ProgramName, CmdLine);
SwapVectors;
WriteLn('...back from Exec');
if DosError <> 0 then{ Error? }
WriteLn('Dos error #', DosError)
else
WriteLn('Exec successful. ',
'Child process exit code = ',
DosExitCode);
end.
ale w sumie tym sposobem się dużo nie odpali bo braknie pamięci :(
albo jest jeszcze drugi przykład przez command.com odpalać:
{$M 8192,0,0}
uses Dos;
var Command: string[79];
begin
Write('Enter DOS command: ');
Readln(Command);
if Command <> '' then
Command := '/C ' + Command;
SwapVectors;
Exec(GetEnv('COMSPEC'), Command);
SwapVectors;
if DosError <> 0 then
Writeln('Could not execute COMMAND.COM');
end.
ja kiedyś miałem taki problem na szybko do rozwiązania to zrobiłem plika wsadowego (bat) i napisałem coś mniej/więcej takiego:
@Echo off
goto start
:odpal
call uruchom.bat
:start
mojprog.exe przezWsad
if errorlevel 5 goto odpal
echo Nara !
echo on
i w programie mojprog.exe pisałem żeby Od razu wyszło jeśli ParamStr(1)<>'przezWsad' i żeby jak chce coś odpalić to żeby zapisywało co do pliku uruchom.bat i potem zaraz Halt(5). wsadóweczka wykryje że errorlevel=5 i odpali plik wsadowy "uruchom.bat". proste, lamerskie, ale działa
0
Działa :) Wielkie dzięki ADAMO :)