Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Minden konzolfolyamat saját vezérlőkezelő függvényekkel rendelkezik, amelyeket a rendszer hív meg, amikor a folyamat CTRL+C, CTRL+BREAK vagy CTRL+CLOSE jelet kap. Kezdetben az egyes folyamatok vezérlőkezelőinek listája csak egy alapértelmezett kezelőfüggvényt tartalmaz, amely meghívja az ExitProcess függvényt. A konzolfolyamatok a SetConsoleCtrlHandler függvény meghívásával további HandlerRoutine-függvényeket adhatnak hozzá vagy távolíthatnak el. Ez a függvény nem befolyásolja más folyamatok vezérlőkezelőinek listáját. Amikor egy konzolfolyamat megkapja a vezérlőjelek bármelyikét, a kezelőfüggvényeket az utolsó regisztrált, elsőként hívott alapon hívja meg, amíg az egyik kezelő true értéket nem ad vissza. Ha egyik kezelő sem ad vissza IGAZ értéket, a rendszer meghívja az alapértelmezett kezelőt.
A függvény dwCtrlType paramétere azonosítja, hogy melyik vezérlőjel érkezett, a visszatérési érték pedig azt jelzi, hogy a jelet kezelték-e.
A parancssori ügyfélfolyamatban egy új szál indul el a kezelői rutinok futtatásához. A szál időtúllépési értékeivel és működésével kapcsolatos további információk a HandlerRoutine függvény dokumentációjában találhatók.
Egy vezérlőkezelő függvényre példa: Control Handler-függvény regisztrálása.
Vegye figyelembe, hogy az AttachConsole, az AllocConsole vagy a FreeConsole hívásával visszaállítja az ügyfélfolyamat vezérlőkezelőinek tábláját a kezdeti állapotára.