8 static HRESULT STDMETHODCALLTYPE
9 IDeskDisplayAdapter_IShellPropSheetExt_QueryInterface(IShellPropSheetExt
*iface
,
13 PDESKDISPLAYADAPTER This
= interface_to_impl(iface
, IShellPropSheetExt
);
14 return IDeskDisplayAdapter_QueryInterface(This
,
19 static ULONG STDMETHODCALLTYPE
20 IDeskDisplayAdapter_IShellPropSheetExt_AddRef(IShellPropSheetExt
* iface
)
22 PDESKDISPLAYADAPTER This
= interface_to_impl(iface
, IShellPropSheetExt
);
23 return IDeskDisplayAdapter_AddRef(This
);
26 static ULONG STDMETHODCALLTYPE
27 IDeskDisplayAdapter_IShellPropSheetExt_Release(IShellPropSheetExt
* iface
)
29 PDESKDISPLAYADAPTER This
= interface_to_impl(iface
, IShellPropSheetExt
);
30 return IDeskDisplayAdapter_Release(This
);
33 static HRESULT STDMETHODCALLTYPE
34 IDeskDisplayAdapter_IShellPropSheetExt_AddPages(IShellPropSheetExt
* iface
,
35 LPFNADDPROPSHEETPAGE pfnAddPage
,
38 PDESKDISPLAYADAPTER This
= interface_to_impl(iface
, IShellPropSheetExt
);
39 return IDeskDisplayAdapter_AddPages(This
,
44 static HRESULT STDMETHODCALLTYPE
45 IDeskDisplayAdapter_IShellPropSheetExt_ReplacePage(IShellPropSheetExt
* iface
,
47 LPFNADDPROPSHEETPAGE pfnReplacePage
,
50 PDESKDISPLAYADAPTER This
= interface_to_impl(iface
, IShellPropSheetExt
);
51 return IDeskDisplayAdapter_ReplacePage(This
,
57 static IShellPropSheetExtVtbl efvtIShellPropSheetExt
=
59 IDeskDisplayAdapter_IShellPropSheetExt_QueryInterface
,
60 IDeskDisplayAdapter_IShellPropSheetExt_AddRef
,
61 IDeskDisplayAdapter_IShellPropSheetExt_Release
,
62 IDeskDisplayAdapter_IShellPropSheetExt_AddPages
,
63 IDeskDisplayAdapter_IShellPropSheetExt_ReplacePage
66 static HRESULT STDMETHODCALLTYPE
67 IDeskDisplayAdapter_IShellExtInit_QueryInterface(IShellExtInit
*iface
,
71 PDESKDISPLAYADAPTER This
= interface_to_impl(iface
, IShellExtInit
);
72 return IDeskDisplayAdapter_QueryInterface(This
,
77 static ULONG STDMETHODCALLTYPE
78 IDeskDisplayAdapter_IShellExtInit_AddRef(IShellExtInit
* iface
)
80 PDESKDISPLAYADAPTER This
= interface_to_impl(iface
, IShellExtInit
);
81 return IDeskDisplayAdapter_AddRef(This
);
84 static ULONG STDMETHODCALLTYPE
85 IDeskDisplayAdapter_IShellExtInit_Release(IShellExtInit
* iface
)
87 PDESKDISPLAYADAPTER This
= interface_to_impl(iface
, IShellExtInit
);
88 return IDeskDisplayAdapter_Release(This
);
91 static HRESULT STDMETHODCALLTYPE
92 IDeskDisplayAdapter_IShellExtInit_Initialize(IShellExtInit
* iface
,
93 LPCITEMIDLIST pidlFolder
,
97 PDESKDISPLAYADAPTER This
= interface_to_impl(iface
, IShellExtInit
);
98 return IDeskDisplayAdapter_Initialize(This
,
104 static IShellExtInitVtbl efvtIShellExtInit
=
106 IDeskDisplayAdapter_IShellExtInit_QueryInterface
,
107 IDeskDisplayAdapter_IShellExtInit_AddRef
,
108 IDeskDisplayAdapter_IShellExtInit_Release
,
109 IDeskDisplayAdapter_IShellExtInit_Initialize
112 static HRESULT STDMETHODCALLTYPE
113 IDeskDisplayAdapter_IClassFactory_QueryInterface(IClassFactory
*iface
,
117 PDESKDISPLAYADAPTER This
= interface_to_impl(iface
, IClassFactory
);
118 return IDeskDisplayAdapter_QueryInterface(This
,
123 static ULONG STDMETHODCALLTYPE
124 IDeskDisplayAdapter_IClassFactory_AddRef(IClassFactory
* iface
)
126 PDESKDISPLAYADAPTER This
= interface_to_impl(iface
, IClassFactory
);
127 return IDeskDisplayAdapter_AddRef(This
);
130 static ULONG STDMETHODCALLTYPE
131 IDeskDisplayAdapter_IClassFactory_Release(IClassFactory
* iface
)
133 PDESKDISPLAYADAPTER This
= interface_to_impl(iface
, IClassFactory
);
134 return IDeskDisplayAdapter_Release(This
);
137 static HRESULT STDMETHODCALLTYPE
138 IDeskDisplayAdapter_IClassFactory_CreateInstance(IClassFactory
*iface
,
139 IUnknown
* pUnkOuter
,
143 if (pUnkOuter
!= NULL
&&
147 return CLASS_E_NOAGGREGATION
;
150 return IDeskDisplayAdapter_Constructor(riid
,
154 static HRESULT STDMETHODCALLTYPE
155 IDeskDisplayAdapter_IClassFactory_LockServer(IClassFactory
*iface
,
159 InterlockedIncrement(&dll_refs
);
161 InterlockedDecrement(&dll_refs
);
166 static IClassFactoryVtbl efvtIClassFactory
=
168 IDeskDisplayAdapter_IClassFactory_QueryInterface
,
169 IDeskDisplayAdapter_IClassFactory_AddRef
,
170 IDeskDisplayAdapter_IClassFactory_Release
,
171 IDeskDisplayAdapter_IClassFactory_CreateInstance
,
172 IDeskDisplayAdapter_IClassFactory_LockServer
,
176 IDeskDisplayAdapter_InitIface(PDESKDISPLAYADAPTER This
)
178 This
->lpIShellPropSheetExtVtbl
= &efvtIShellPropSheetExt
;
179 This
->lpIShellExtInitVtbl
= &efvtIShellExtInit
;
180 This
->lpIClassFactoryVtbl
= &efvtIClassFactory
;
182 IDeskDisplayAdapter_AddRef(This
);
186 DllGetClassObject(REFCLSID rclsid
,
194 if (IsEqualCLSID(rclsid
,
195 &CLSID_IDeskDisplayAdapter
))
197 return IDeskDisplayAdapter_Constructor(riid
,
201 DPRINT1("DllGetClassObject: CLASS_E_CLASSNOTAVAILABLE\n");
202 return CLASS_E_CLASSNOTAVAILABLE
;
206 DllCanUnloadNow(VOID
)
208 return dll_refs
== 0 ? S_OK
: S_FALSE
;