Přidáno 986 bajtů,
2. 10. 2012, 15:30 Vymění navzájem vektory přerušení v SaveIntXX.
;Deklarace
procedure SwapVectors;
;Režim
:Reálný, Chráněný
;Poznámky
:Vymění navzájem obsahy pointrů SaveIntXX v jednotce [[System]] a aktuální obsahy vektorů přerušení. [[SwapVectors]] je obvykle použito těsně před a ihned po volání [[Exec]]. Tím je zajištěno, že volaný proces nepoužije žádné obsluhy přerušení, instalované aktuálním procesem, a naopak.
;Viz také
:[[Exec]]
Vzorový příklad
{ Getenv.PAS }
{ Vzorový příklad pro funkci GetEnv. }
{$M 8192,0,0}
uses Dos;
var Command: string[79];
begin
Write('Zadejte příkaz DOSu: ');
Readln(Command);
if Command <> '' then
Command := '/C ' + Command;
SwapVectors;
Exec(GetEnv('COMSPEC'), Command);
SwapVectors;
if DosError <> 0 then
Writeln('Nelze spustit COMMAND.COM');
end.
[[Category:DOS]]
[[Category:WinDos]]
[[Category:Procedúry DOS]]
[[Category:Procedury a funkce správy procesů]]