Zum Deaktivieren der Aufgabe auf Win32-Plattformen wechseln

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 226359 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Auf dieser Seite

Zusammenfassung

Dieser Artikel beschreibt, Aufgabe wechseln und andere Systemfunktionen Zugriff über Tastenkombinationen wie STRG + ESC und ALT + TAB auf Win32-Plattformen zu deaktivieren.

Windows 95 und Windows 98

Anwendungen können aktivieren und [ALT] + [TAB] und [STRG] + [ESC], z. B. durch Aufrufen von SystemParametersInfo (SPI_SETSCREENSAVERRUNNING) deaktivieren. Um [ALT] + [TAB] und [STRG] + [ESC] zu deaktivieren, legen Sie den UiParam-Parameter auf TRUE ; die Tastenkombinationen aktivieren, legen Sie den Parameter auf FALSE :
UINT nPreviousState;

// Disables task switching
SystemParametersInfo (SPI_SETSCREENSAVERRUNNING, TRUE, &nPreviousState, 0);

// Enables task switching
SystemParametersInfo (SPI_SETSCREENSAVERRUNNING, FALSE, &nPreviousState, 0);
				
Vorgang vor dem Beenden wechseln oder wechseln bleibt deaktiviert, nachdem der Prozess beendet wird, müssen Hinweis Anwendungen, die SystemParametersInfo (SPI_SETSCREENSAVERRUNNING), verwenden um Aufgabe wechseln deaktivieren aktivieren.

Windows NT 4.0 Service Pack 3 und höher und Windows 2000

Anwendungen können ALT + TAB oder STRG + ESC deaktivieren, indem einen Low-Level-Tastatur-Hook installieren. Ein Low-Level-Tastatur-Hook (WH_KEYBOARD_LL) wird durch Aufrufen von SetWindowsHookEx installiert. Weitere Informationen im Fenster Hooks finden Sie unter Überblick "Hooks" in der Platform SDK-Dokumentation.

Eine Hookprozedur Beispiel Low-Level Tastatur, die Tastenkombination [STRG] + [ESC], [ALT] + [TAB] und [ALT] + [ESC] deaktiviert ist:
LRESULT CALLBACK LowLevelKeyboardProc (INT nCode, WPARAM wParam, LPARAM lParam)
{
    // By returning a non-zero value from the hook procedure, the
    // message does not get passed to the target window
    KBDLLHOOKSTRUCT *pkbhs = (KBDLLHOOKSTRUCT *) lParam;
    BOOL bControlKeyDown = 0;

    switch (nCode)
    {
        case HC_ACTION:
        {
            // Check to see if the CTRL key is pressed
            bControlKeyDown = GetAsyncKeyState (VK_CONTROL) >> ((sizeof(SHORT) * 8) - 1);
            
            // Disable CTRL+ESC
            if (pkbhs->vkCode == VK_ESCAPE && bControlKeyDown)
                return 1;

            // Disable ALT+TAB
            if (pkbhs->vkCode == VK_TAB && pkbhs->flags & LLKHF_ALTDOWN)
                return 1;

            // Disable ALT+ESC
            if (pkbhs->vkCode == VK_ESCAPE && pkbhs->flags & LLKHF_ALTDOWN)
                return 1;

            break;
        }

        default:
            break;
    }
    return CallNextHookEx (hHook, nCode, wParam, lParam);
}
				

Windows NT 4.0 Service Pack 2 und früher, Windows NT 3.51 und früher

Anwendungen können die systemweite STRG + ESC deaktivieren, indem ersetzt Windows NT-TaskManager wird, dies jedoch nicht empfohlen.

Anwendungen können beim Ausführen der Anwendung registrieren Abkürzungstasten für die [ALT] + [TAB] und [ALT] + [ESC] Kombinationen durch Aufrufen der RegisterHotKey [ALT] + [TAB] und [ALT] + [ESC] deaktivieren.

Weitere Informationen

Ältere Entwicklungstools, wie z. B. Microsoft Visual C++ Version 5.0 und früher enthält möglicherweise nicht die Header entsprechenden Dateien zum Erstellen einer Anwendung, die Low-Level Tastatur Hooks verwendet. Um die neuesten Headerdateien erhalten möchten, Downloaden der neuesten Platform SDK aus der folgenden Microsoft-Website:
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm
Da Low-Level Tastatur Hooks ein Feature für Windows NT 4.0 Service Pack 3 und höher sind, definieren Sie _WIN32_WINNT > = 0x0400 vor, wie z. B. winuser.h (oder windows.h).

Eigenschaften

Artikel-ID: 226359 - Geändert am: Dienstag, 21. November 2006 - Version: 4.3
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Win32 Application Programming Interface, wenn verwendet mit:
    • the operating system: Microsoft Windows XP
    • the operating system: Microsoft Windows 2000
    • Microsoft Windows NT 4.0
    • Microsoft Windows NT 3.51 Service Pack 5
    • Microsoft Windows Millennium Edition
    • Microsoft Windows 98 Standard Edition
    • Microsoft Windows 95
Keywords: 
kbmt kbhook kbhowto kbinput KB226359 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 226359
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com