Share via


PropertySheetW-Funktion (prsht.h)

Erstellt ein Eigenschaftenblatt und fügt die in der angegebenen Headerstruktur des Eigenschaftenblatts definierten Seiten hinzu.

Syntax

INT_PTR PropertySheetW(
  LPCPROPSHEETHEADERW unnamedParam1
);

Parameter

unnamedParam1

Typ: LPCPROPSHEETHEADER

Zeiger auf eine PROPSHEETHEADER-Struktur , die den Rahmen und die Seiten eines Eigenschaftenblatts definiert.

Rückgabewert

Typ: INT_PTR

Für modale Eigenschaftenblätter lautet der Rückgabewert wie folgt:

>=1 Änderungen wurden vom Benutzer gespeichert.
0 Der Benutzer hat keine Änderungen gespeichert.
-1 Ein Fehler ist aufgetreten.
 

Bei moduslosen Eigenschaftenblättern ist der Rückgabewert das Fensterhandle des Eigenschaftenblatts.

Die folgenden Rückgabewerte haben eine besondere Bedeutung.

Rückgabecode Beschreibung
ID_PSREBOOTSYSTEM
Eine Seite hat die PSM_REBOOTSYSTEM-Nachricht an das Eigenschaftenblatt gesendet. Der Computer muss neu gestartet werden, damit die Änderungen des Benutzers wirksam werden.
ID_PSRESTARTWINDOWS
Eine Seite hat die PSM_RESTARTWINDOWS-Nachricht an das Eigenschaftenblatt gesendet. Windows muss neu gestartet werden, damit die Änderungen des Benutzers wirksam werden.

Hinweise

Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen abzurufen.

Wenn Sie versuchen, einem Eigenschaftenblatt mehr als 99 Seiten hinzuzufügen, schlägt diese Funktion fehl, aber ohne Angabe der Fehlerursache: PropertySheet gibt den Wert -1 zurück, aber GetLastError gibt 0 zurück.

Hinweis Die folgenden Hinweise beziehen sich nur auf Assistenten, die nicht den Aero-Assistentenstil (PSH_AEROWIZARD) verwenden, oder Nicht-Assistenten-Eigenschaftenblätter.
 
Standardmäßig erstellt die PropertySheet-Funktion ein modales Dialogfeld. Wenn der dwFlags-Member der PROPSHEETHEADER-Struktur das PSH_MODELESS-Flag angibt, erstellt PropertySheet ein modusloses Dialogfeld und gibt unmittelbar nach der Erstellung zurück. In diesem Fall ist der Rückgabewert PropertySheet das Fensterhandle für das dialogfeld ohne Modus.

Bei einem moduslosen Eigenschaftenblatt sollte Ihre Nachrichtenschleife PSM_ISDIALOGMESSAGE verwenden, um Nachrichten an das Eigenschaftenblattdialogfeld zu übergeben. Ihre Nachrichtenschleife sollte PSM_GETCURRENTPAGEHWND verwenden, um zu bestimmen, wann das Dialogfeld zerstört werden soll. Wenn der Benutzer auf die Schaltfläche OK oder Abbrechen klickt, gibt PSM_GETCURRENTPAGEHWNDNULL zurück. Anschließend können Sie die DestroyWindow-Funktion verwenden, um das Dialogfeld zu zerstören.

Version 5.80. Der PropertySheet-Rückgabewert enthält unterschiedliche Informationen für modale und moduslose Eigenschaftenblätter. In einigen Fällen benötigen moduslose Eigenschaftenblätter möglicherweise die Informationen, die sie von PropertySheet erhalten hätten, wenn sie modal gewesen wären. Insbesondere müssen sie wissen, ob ID_PSREBOOTSYSTEM oder ID_PSRESTARTWINDOWS zurückgegeben worden wären. Ein modusloses Eigenschaftenblatt kann den Wert abrufen, den ein modales Eigenschaftenblatt von PropertySheet erhalten hätte, indem es wartet, bis PSM_GETCURRENTPAGEHWNDNULL zurückgibt, und dann eine PSM_GETRESULT Nachricht sendet.

Hinweis

Der prsht.h-Header definiert PropertySheet als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile prsht.h
Bibliothek Comctl32.lib
DLL Comctl32.dll
APIs ext-ms-win-shell-comctl32-window-l1-1-0 (eingeführt in Windows 10, Version 10.0.14393)