Condividi tramite


Metodo IPropertySheetProvider::CreatePropertySheet (mmc.h)

Il metodo IPropertySheetProvider::CreatePropertySheet crea una cornice della finestra delle proprietà.

Sintassi

HRESULT CreatePropertySheet(
  [in] LPCWSTR      title,
  [in] boolean      type,
  [in] MMC_COOKIE   cookie,
  [in] LPDATAOBJECT pIDataObjectm,
  [in] DWORD        dwOptions
);

Parametri

[in] title

Puntatore a una stringa con terminazione Null contenente il titolo della pagina delle proprietà. Questo parametro non può essere NULL.

[in] type

TRUE crea una finestra delle proprietà e FALSE crea una procedura guidata.

[in] cookie

Valore cookie dell'elemento attualmente selezionato. Può essere NULL quando CreatePropertySheet viene chiamato da uno snap-in di estensione.

[in] pIDataObjectm

Puntatore all'interfaccia IDataObject nell'oggetto dati per il cookie. Se il valore di questo parametro è NULL, MMC non chiamerà nessuno dei metodi IExtendPropertySheet2 implementati dagli snap-in di estensione.

[in] dwOptions

Valore che specifica i flag che possono essere impostati dalla chiamata al metodo. Il parametro può essere una combinazione dei valori seguenti:

MMC_PSO_NOAPPLYNOW

Rimuovi il pulsante Applica ora.

MMC_PSO_HASHELP

Aggiungere un pulsante ? .

MMC_PSO_NO_PROPTITLE

Ignorato per le procedure guidate. Per le finestre delle proprietà, se questa opzione è specificata, le parole "Proprietà per" non verranno inserite all'inizio della barra del titolo della finestra delle proprietà.

MMC_PSO_NEWWIZARDTYPE

Usa lo stile della procedura guidata 97.

Ad esempio, per creare una finestra delle proprietà con un pulsante ? e che non dispone di un pulsante Applica ora, il parametro dwOptions deve essere MMC_PSO_NOAPPLYNOW | MMC_PSO_HASHELP.

Valore restituito

Questo metodo può restituire uno di questi valori.

Commenti

Questo metodo crea un oggetto che raccoglie tutte le informazioni necessarie per creare una finestra delle proprietà. Se la chiamata a CreatePropertySheet ha esito positivo, ma si verificano errori successivi, è necessario chiamare IPropertySheetProvider::Show( –1, 0) per liberare oggetti. In questo caso, il codice restituito può essere ignorato.

Nelle situazioni in cui lo snap-in crea una finestra delle proprietà in una chiamata a IPropertySheetProvider::CreatePropertySheet e facoltativamente chiama IPropertySheetProvider::AddPrimaryPages e IPropertySheetProvider::AddExtensionPages e quindi decide di non visualizzare la finestra delle proprietà, deve chiamare IPropertySheetProvider::Show( –1, 0) per eliminare la finestra delle proprietà e liberarne le risorse. In questo caso, lo snap-in deve eliminare gli handle della pagina delle proprietà creati. Questa operazione può essere eseguita prima o dopo che lo snap-in chiama IPropertySheetProvider::Show( –1, 0), perché MMC non utilizza gli handle della pagina delle proprietà.

Per uno snap-in destinato a MMC 1.1, lo snap-in deve mantenere un riferimento aggiuntivo sull'interfaccia IDataObject che passa a MMC nella chiamata IPropertySheetProvider::CreatePropertySheet. Questo riferimento deve essere mantenuto prima della chiamata IPropertySheetProvider::CreatePropertySheet fino a quando la finestra delle proprietà non viene eventualmente chiusa con una chiamata a IPropertySheetProvider::Show( -1, 0).

Requisiti

   
Client minimo supportato Windows Vista
Server minimo supportato Windows Server 2008
Piattaforma di destinazione Windows
Intestazione mmc.h
DLL Mmcndmgr.dll

Vedi anche

Idataobject

IPropertySheetProvider

IPropertySheetProvider::Show