Metodo IShellLibrary::LoadLibraryFromItem (shobjidl_core.h)
Carica la libreria da un file di definizione della libreria specificato.
Sintassi
HRESULT LoadLibraryFromItem(
[in] IShellItem *psiLibrary,
[in] DWORD grfMode
);
Parametri
[in] psiLibrary
Tipo: IShellItem*
Oggetto IShellItem per il file di definizione della libreria da caricare. Se questo oggetto non è una libreria, viene restituito un errore.
[in] grfMode
Tipo: DWORD
Uno o più flag di archiviazione STGM che specificano le modalità di accesso e condivisione per l'oggetto libreria.
Valore restituito
Tipo: HRESULT
Se questo metodo ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .
Commenti
Se questo metodo viene chiamato su un oggetto IShellLibrary già caricato, il contenuto di tale oggetto viene sovrascritto in memoria con le nuove informazioni.
Se non è presente alcun oggetto di libreria, è possibile chiamare SHLoadLibraryFromItem al posto di questo metodo.
Esempio
Nell'esempio di codice seguente viene illustrata la funzione helper SHLoadLibraryFromItem, che esegue il wrapping di questo metodo.
//
// from shobjidl.h
//
__inline HRESULT SHLoadLibraryFromItem(
__in IShellItem *psiLibrary,
__in DWORD grfMode,
__in REFIID riid,
__deref_out void **ppv
)
{
*ppv = NULL;
IShellLibrary *plib;
HRESULT hr = CoCreateInstance(
CLSID_ShellLibrary,
NULL,
CLSCTX_INPROC_SERVER,
IID_PPV_ARGS(&plib));
if (SUCCEEDED(hr))
{
hr = plib->LoadLibraryFromItem (psiLibrary, grfMode);
if (SUCCEEDED(hr))
{
hr = plib->QueryInterface (riid, ppv);
}
plib->Release();
}
return hr;
}
Nell'esempio di codice seguente viene illustrata la funzione helper SHLoadLibraryFromParsingName, che esegue il wrapping di questo metodo.
//
// from shobjidl.h
//
__inline HRESULT SHLoadLibraryFromParsingName(
__in PCWSTR pszParsingName,
__in DWORD grfMode,
__in REFIID riid,
__deref_out void **ppv
)
{
*ppv = NULL;
IShellItem *psiLibrary;
HRESULT hr = SHCreateItemFromParsingName (
pszParsingName,
NULL,
IID_PPV_ARGS(&psiLibrary));
if (SUCCEEDED(hr))
{
hr = SHLoadLibraryFromItem (psiLibrary, grfMode, riid, ppv);
psiLibrary->Release();
}
return hr;
}
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 7 [solo app desktop] |
Server minimo supportato | Windows Server 2008 R2 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | shobjidl_core.h (include Shobjidl.h) |
Vedi anche
IShellLibrary::LoadLibraryFromKnownFolder