__inline HRESULT SHLoadLibraryFromKnownFolder(REFKNOWNFOLDERID aFolderId, DWORD aMode, REFIID riid, void **ppv) { *ppv = NULL; IShellLibrary *plib; HRESULT hr = CoCreateInstance(CLSID_ShellLibrary, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&plib)); if (SUCCEEDED(hr)) { hr = plib->LoadLibraryFromKnownFolder(aFolderId, aMode); if (SUCCEEDED(hr)) { hr = plib->QueryInterface(riid, ppv); } plib->Release(); } return hr; }