MCPcopy Create free account
hub / github.com/Squirrel/Squirrel.Windows / FindDesktopFolderView

Function FindDesktopFolderView

src/Setup/UpdateRunner.cpp:65–94  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

63}
64
65HRESULT FindDesktopFolderView(REFIID riid, void **ppv)
66{
67 HRESULT hr;
68
69 CComPtr<IShellWindows> spShellWindows;
70 spShellWindows.CoCreateInstance(CLSID_ShellWindows);
71
72 CComVariant vtLoc(CSIDL_DESKTOP);
73 CComVariant vtEmpty;
74 long lhwnd;
75 CComPtr<IDispatch> spdisp;
76
77 hr = spShellWindows->FindWindowSW(
78 &vtLoc, &vtEmpty,
79 SWC_DESKTOP, &lhwnd, SWFO_NEEDDISPATCH, &spdisp);
80 if (FAILED(hr)) return hr;
81
82 CComPtr<IShellBrowser> spBrowser;
83 hr = CComQIPtr<IServiceProvider>(spdisp)->QueryService(SID_STopLevelBrowser, IID_PPV_ARGS(&spBrowser));
84 if (FAILED(hr)) return hr;
85
86 CComPtr<IShellView> spView;
87 hr = spBrowser->QueryActiveShellView(&spView);
88 if (FAILED(hr)) return hr;
89
90 hr = spView->QueryInterface(riid, ppv);
91 if (FAILED(hr)) return hr;
92
93 return S_OK;
94}
95
96HRESULT GetDesktopAutomationObject(REFIID riid, void **ppv)
97{

Callers 1

Calls 1

QueryInterfaceMethod · 0.45

Tested by

no test coverage detected