Freigeben über


AllowSetForegroundWindow-Funktion (winuser.h)

Ermöglicht dem angegebenen Prozess das Festlegen des Vordergrundfensters mithilfe der SetForegroundWindow-Funktion . Der aufrufende Prozess muss bereits in der Lage sein, das Vordergrundfenster festzulegen. Weitere Informationen finden Sie weiter unten in diesem Thema in den Anmerkungen.

Syntax

BOOL AllowSetForegroundWindow(
  [in] DWORD dwProcessId
);

Die Parameter

[in] dwProcessId

Typ: DWORD-

Der Bezeichner des Prozesses, der zum Festlegen des Vordergrundfensters aktiviert ist. Wenn dieser Parameter ASFW_ANY ist, werden alle Prozesse aktiviert, um das Vordergrundfenster festzulegen.

Rückgabewert

Typ: BOOL-

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.

Wenn die Funktion fehlschlägt, ist der Rückgabewert null. Die Funktion schlägt fehl, wenn der aufrufende Prozess das Vordergrundfenster nicht festlegen kann. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten.

Bemerkungen

Das System schränkt ein, welche Prozesse das Vordergrundfenster festlegen können. Normalerweise kann ein Prozess das Vordergrundfenster festlegen, indem die SetForegroundWindow-Funktion nur dann aufgerufen wird, wenn:

  • Alle folgenden Bedingungen gelten:
    • Der Aufrufvorgang gehört zu einer Desktopanwendung, nicht zu einer UWP-App oder einer Windows Store-App, die für Windows 8 oder 8.1 entwickelt wurde.
    • Der Vordergrundprozess hat keine Aufrufe an SetForegroundWindow durch einen vorherigen Aufruf der LockSetForegroundWindow-Funktion deaktiviert.
    • Es sind keine Menüs aktiv.
  • Darüber hinaus gilt mindestens eine der folgenden Bedingungen:
    • Das Zeitlimit für die Vordergrundsperre ist abgelaufen (siehe SPI_GETFOREGROUNDLOCKTIMEOUT in SystemParametersInfo).
    • Der aufrufende Prozess ist der Vordergrundprozess.
    • Der Aufrufvorgang wurde vom Vordergrundprozess gestartet.
    • Es gibt derzeit kein Vordergrundfenster und somit keinen Vordergrundprozess.
    • Der aufrufende Prozess hat das letzte Eingabeereignis empfangen.
    • Entweder der Vordergrundprozess oder der aufrufende Prozess wird gedebuggt.

Ein Prozess, der das Vordergrundfenster festlegen kann, kann es einem anderen Prozess ermöglichen, das Vordergrundfenster durch Aufrufen von AllowSetForegroundWindow festzulegen. Der durch den dwProcessId-Parameter angegebene Prozess verliert die Möglichkeit, das Vordergrundfenster das nächste Mal festzulegen, wenn der Benutzer Eingaben generiert, es sei denn, die Eingabe wird an diesen Prozess weitergeleitet, oder wenn ein Prozess AllowSetForegroundWindow aufruft, es sei denn, derselbe Prozess wird im vorherigen Aufruf von AllowSetForegroundWindow angegeben.

Anforderungen

Anforderung Wert
Mindestens unterstützter Client Windows 2000 Professional [nur Desktop-Apps]
Mindestanforderungen für unterstützte Server Windows 2000 Server [nur Desktop-Apps]
Zielplattform Fenster
Header winuser.h (enthalten Windows.h)
Library User32.lib
DLL User32.dll
API-Satz ext-ms-win-ntuser-window-l1-1-0 (eingeführt in Windows 8)

Siehe auch

Konzeptionelle

LockSetForegroundWindow

Referenz

SetForegroundWindow

Windows