IPropertySheetProvider::CreatePropertySheet-Methode (mmc.h)
Die IPropertySheetProvider::CreatePropertySheet-Methode erstellt einen Eigenschaftenblattrahmen.
Syntax
HRESULT CreatePropertySheet(
[in] LPCWSTR title,
[in] boolean type,
[in] MMC_COOKIE cookie,
[in] LPDATAOBJECT pIDataObjectm,
[in] DWORD dwOptions
);
Parameter
[in] title
Ein Zeiger auf eine NULL-endende Zeichenfolge, die den Titel der Eigenschaftenseite enthält. Dieser Parameter darf nicht NULL sein.
[in] type
TRUE erstellt ein Eigenschaftenblatt und FALSE einen Assistenten.
[in] cookie
Cookiewert des aktuell ausgewählten Elements. Dies kann NULL sein, wenn CreatePropertySheet von einem Erweiterungs-Snap-In aufgerufen wird.
[in] pIDataObjectm
Ein Zeiger auf die IDataObject-Schnittstelle für das Datenobjekt für das Cookie. Wenn der Wert dieses Parameters NULL ist, ruft MMC keine der IExtendPropertySheet2-Methoden auf, die von Erweiterungs-Snap-Ins implementiert werden.
[in] dwOptions
Ein -Wert, der die Flags angibt, die durch den Methodenaufruf festgelegt werden können. Der Parameter kann eine Kombination der folgenden Werte sein:
MMC_PSO_NOAPPLYNOW
Schaltfläche "Jetzt anwenden" entfernen.
MMC_PSO_HASHELP
Fügen Sie eine Hilfeschaltfläche hinzu.
MMC_PSO_NO_PROPTITLE
Wird für Assistenten ignoriert. Wenn diese Option für Eigenschaftenblätter angegeben ist, werden die Wörter "Eigenschaften für" nicht am Anfang der Titelleiste des Eigenschaftenblatts eingefügt.
MMC_PSO_NEWWIZARDTYPE
Verwenden Sie den Assistenten 97-Stil.
Um beispielsweise ein Eigenschaftenblatt zu erstellen, das über eine Hilfeschaltfläche verfügt und keine Schaltfläche Jetzt anwenden enthält, sollte der dwOptions-Parameter lauten MMC_PSO_NOAPPLYNOW | MMC_PSO_HASHELP
.
Rückgabewert
Diese Methode kann einen dieser Werte zurückgeben.
Hinweise
Diese Methode erstellt ein -Objekt, das alle Informationen sammelt, die zum Erstellen eines Eigenschaftenblatts erforderlich sind. Wenn der CreatePropertySheet-Aufruf erfolgreich ist, aber nachfolgende Fehler auftreten, müssen Sie IPropertySheetProvider::Show( –1, 0) aufrufen, um Objekte freizugeben. Der Rückgabecode kann in diesem Fall ignoriert werden.
In Situationen, in denen das Snap-In ein Eigenschaftenblatt in einem Aufruf von IPropertySheetProvider::CreatePropertySheet erstellt und dann optional IPropertySheetProvider::AddPrimaryPages und IPropertySheetProvider::AddExtensionPages aufruft und dann entscheidet, das Eigenschaftenblatt nicht anzuzeigen, sollte IPropertySheetProvider::Show( –1, 0) aufgerufen werden, um das Eigenschaftenblatt zu löschen und seine Ressourcen freizugeben. In diesem Fall muss das Snap-In die Eigenschaftenseite löschen, die es erstellt hat. Dies kann vor oder nach dem Aufruf von IPropertySheetProvider::Show( –1, 0) durch das Snap-In erfolgen, da MMC die Eigenschaftenseitenhandles nicht verwendet.
Für ein Snap-In, das auf MMC 1.1 ausgerichtet ist, muss das Snap-In einen zusätzlichen Verweis auf die IDataObject-Schnittstelle beibehalten, die es im IPropertySheetProvider::CreatePropertySheet-Aufruf an MMC übergibt. Dieser Verweis muss vor dem IPropertySheetProvider::CreatePropertySheet-Aufruf beibehalten werden, bis das Eigenschaftenblatt möglicherweise mit einem Aufruf von IPropertySheetProvider::Show( –1, 0) geschlossen wurde.
Anforderungen
Unterstützte Mindestversion (Client) | Windows Vista |
Unterstützte Mindestversion (Server) | Windows Server 2008 |
Zielplattform | Windows |
Kopfzeile | mmc.h |
DLL | Mmcndmgr.dll |