Condividi tramite


Metodo IShellFolder::CreateViewObject (shobjidl_core.h)

Richiede un oggetto che può essere usato per ottenere informazioni da o interagire con un oggetto cartella.

Sintassi

HRESULT CreateViewObject(
  [in]  HWND   hwndOwner,
  [in]  REFIID riid,
  [out] void   **ppv
);

Parametri

[in] hwndOwner

Tipo: HWND

Handle alla finestra del proprietario. Se è stato implementato un oggetto visualizzazione cartelle personalizzato, la finestra di visualizzazione cartelle deve essere creata come figlio di hwndOwner.

[in] riid

Tipo: REFIID

Riferimento all'IID dell'interfaccia da recuperare tramite ppv, in genere IID_IShellView.

[out] ppv

Tipo: void**

Quando questo metodo restituisce correttamente, contiene il puntatore dell'interfaccia richiesto in riid. Questo è in genere IShellView. Per altre informazioni, vedere le sezione Osservazioni.

Valore restituito

Tipo: HRESULT

Se questo metodo ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .

Commenti

Per supportare questa richiesta, creare un oggetto che espone l'interfaccia indicata da riid e restituire un puntatore a tale interfaccia.

Lo scopo principale di questo metodo è fornire Esplora risorse con l'oggetto vista cartella dell'oggetto cartella. Esplora risorse richiede un oggetto visualizzazione cartelle impostando riid su IID_IShellView. L'oggetto visualizzazione cartelle visualizza il contenuto della cartella nella visualizzazione cartella di Esplora risorse. L'oggetto visualizzazione cartelle deve essere indipendente dall'oggetto cartella Shell, perché Esplora cartelle può chiamare questo metodo più volte per creare più oggetti di visualizzazione cartelle. Ogni volta che viene chiamato questo metodo, è necessario creare un nuovo oggetto di visualizzazione. L'oggetto cartella può rispondere in uno dei due modi per questa richiesta. Il Centro sicurezza di Azure può:

  • Creare un oggetto visualizzazione cartelle personalizzato e restituire un puntatore all'interfaccia IShellView .
  • Creare un oggetto visualizzazione cartelle di sistema e restituire un puntatore all'interfaccia IShellView .
Questo metodo viene usato anche per richiedere oggetti che espongono una di diverse interfacce facoltative, tra cui IContextMenu o IExtractIcon. In questo contesto CreateViewObject è simile all'utilizzo di IShellFolder::GetUIObjectOf. Tuttavia, si chiama IShellFolder::GetUIObjectOf per richiedere un oggetto per uno degli elementi contenuti in una cartella. Chiamare IShellFolder::CreateViewObject per richiedere un oggetto per la cartella stessa. Le interfacce richieste più comunemente sono: È consigliabile usare la macro IID_PPV_ARGS definita in Objbase.h per creare il pacchetto dei parametri riid e ppv . Questa macro fornisce l'IID corretto in base all'interfaccia a cui punta il valore in ppv, che elimina la possibilità di un errore di codifica in riid che potrebbe causare risultati imprevisti.

Requisiti

   
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione shobjidl_core.h (include Shobjidl.h)
DLL Shell32.dll (versione 4.0 o successiva)

Vedi anche

IShellFolder

IShellFolder2