Freigeben über


PropertySheetA-Funktion (prsht.h)

Erstellt ein Eigenschaftenblatt und fügt die seiten hinzu, die in der angegebenen Eigenschaftenblattheaderstruktur definiert sind.

Syntax

INT_PTR PropertySheetA(
  LPCPROPSHEETHEADERA 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, jedoch 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 keine Eigenschaftenblätter des Aero-Assistenten (PSH_AEROWIZARD) oder nicht des Assistenten verwenden.
 
Standardmäßig erstellt die PropertySheet-Funktion ein modales Dialogfeld. Wenn das dwFlags-Element der PROPSHEETHEADER-Struktur das flag PSH_MODELESS angibt, erstellt PropertySheet ein modusloses Dialogfeld und gibt sofort nach der Erstellung zurück. In diesem Fall ist der PropertySheet-Rückgabewert das Fensterhandle zum dialogfeld ohne Modus.

Für ein modusloses Eigenschaftenblatt sollte Ihre Nachrichtenschleife PSM_ISDIALOGMESSAGE verwenden, um Nachrichten an das Dialogfeld Eigenschaftenblatt 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 möglicherweise wissen, ob ID_PSREBOOTSYSTEM oder ID_PSRESTARTWINDOWS zurückgegeben worden wäre. 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 nicht codierungsneutralem Code kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
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)