IShellLibrary::LoadLibraryFromItem-Methode (shobjidl_core.h)
Lädt die Bibliothek aus einer angegebenen Bibliotheksdefinitionsdatei.
Syntax
HRESULT LoadLibraryFromItem(
[in] IShellItem *psiLibrary,
[in] DWORD grfMode
);
Parameter
[in] psiLibrary
Typ: IShellItem*
Ein IShellItem-Objekt für die zu ladende Bibliotheksdefinitionsdatei. Ein Fehler wird zurückgegeben, wenn es sich bei diesem Objekt nicht um eine Bibliothek handelt.
[in] grfMode
Art: DWORD
Mindestens eine STGM-Speichermediumflagge, die Zugriffs- und Freigabemodi für das Bibliotheksobjekt angeben.
Rückgabewert
Typ: HRESULT
Wenn diese Methode erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.
Hinweise
Wenn diese Methode für ein bereits geladenes IShellLibrary-Objekt aufgerufen wird, wird der Inhalt dieses Objekts im Arbeitsspeicher mit den neuen Informationen überschrieben.
Wenn kein Bibliotheksobjekt vorhanden ist, kann SHLoadLibraryFromItem anstelle dieser Methode aufgerufen werden.
Beispiele
Das folgende Codebeispiel zeigt die Hilfsfunktion SHLoadLibraryFromItem, die diese Methode umschließt.
//
// 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;
}
Das folgende Codebeispiel zeigt die Hilfsfunktion SHLoadLibraryFromParsingName, die diese Methode umschließt.
//
// 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;
}
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 7 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | shobjidl_core.h (einschließlich Shobjidl.h) |
Weitere Informationen
IShellLibrary::LoadLibraryFromKnownFolder