Funzione SHCreateShellItemArrayFromDataObject (shobjidl_core.h)
Crea un oggetto matrice di elementi shell da un oggetto dati.
Sintassi
SHSTDAPI SHCreateShellItemArrayFromDataObject(
[in] IDataObject *pdo,
[in] REFIID riid,
[out] void **ppv
);
Parametri
[in] pdo
Tipo: IDataObject*
Puntatore all'interfaccia IDataObject .
[in] riid
Tipo: REFIID
Riferimento all'ID di interfaccia desiderato.
[out] ppv
Tipo: void**
Quando termina, questo metodo contiene il puntatore di interfaccia richiesto in riid. Si tratta in genere di IShellItemArray.
Valore restituito
Tipo: HRESULT
Se questa funzione ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .
Commenti
Questa funzione è utile per le estensioni shell che implementano IShellExtInit e vengono passati un oggetto dati al metodo IShellExtInit::Initialize ; ad esempio gestori di menu di scelta rapida.
Questa API consente di convertire l'oggetto dati in un elemento shell utilizzabile dal gestore. È consigliabile che i gestori usino una matrice di elementi shell anziché formati di appunti come CF_HDROP e CFSTR_SHELLIDLIST (noti anche come HIDA) perché comporta codice più semplice e consente alcuni miglioramenti delle prestazioni.
La matrice di elementi della shell risultante contiene un riferimento all'oggetto dati di origine. Pertanto, tale oggetto dati deve rimanere valido per la durata della matrice di elementi della shell. In particolare, gli oggetti dati passati ai metodi IDropTarget non sono più validi al termine dell'operazione di rilascio.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | shobjidl_core.h (include Shobjidl.h) |
DLL | Shell32.dll |
Set di API | ext-ms-win-shell-shell32-l1-2-2 (introdotto in Windows 10, versione 10.0.14393) |