ReactOS  0.4.15-dev-1201-gb2cf5a4
shxiface.c File Reference
#include "precomp.h"
#include <debug.h>
Include dependency graph for shxiface.c:

Go to the source code of this file.

Macros

#define NDEBUG
 

Functions

static HRESULT STDMETHODCALLTYPE IDeskMonitor_IShellPropSheetExt_QueryInterface (IShellPropSheetExt *iface, REFIID iid, PVOID *pvObject)
 
static ULONG STDMETHODCALLTYPE IDeskMonitor_IShellPropSheetExt_AddRef (IShellPropSheetExt *iface)
 
static ULONG STDMETHODCALLTYPE IDeskMonitor_IShellPropSheetExt_Release (IShellPropSheetExt *iface)
 
static HRESULT STDMETHODCALLTYPE IDeskMonitor_IShellPropSheetExt_AddPages (IShellPropSheetExt *iface, LPFNADDPROPSHEETPAGE pfnAddPage, LPARAM lParam)
 
static HRESULT STDMETHODCALLTYPE IDeskMonitor_IShellPropSheetExt_ReplacePage (IShellPropSheetExt *iface, EXPPS uPageID, LPFNADDPROPSHEETPAGE pfnReplacePage, LPARAM lParam)
 
static HRESULT STDMETHODCALLTYPE IDeskMonitor_IShellExtInit_QueryInterface (IShellExtInit *iface, REFIID iid, PVOID *pvObject)
 
static ULONG STDMETHODCALLTYPE IDeskMonitor_IShellExtInit_AddRef (IShellExtInit *iface)
 
static ULONG STDMETHODCALLTYPE IDeskMonitor_IShellExtInit_Release (IShellExtInit *iface)
 
static HRESULT STDMETHODCALLTYPE IDeskMonitor_IShellExtInit_Initialize (IShellExtInit *iface, LPCITEMIDLIST pidlFolder, IDataObject *pdtobj, HKEY hkeyProgID)
 
static HRESULT STDMETHODCALLTYPE IDeskMonitor_IClassFactory_QueryInterface (IClassFactory *iface, REFIID iid, PVOID *pvObject)
 
static ULONG STDMETHODCALLTYPE IDeskMonitor_IClassFactory_AddRef (IClassFactory *iface)
 
static ULONG STDMETHODCALLTYPE IDeskMonitor_IClassFactory_Release (IClassFactory *iface)
 
static HRESULT STDMETHODCALLTYPE IDeskMonitor_IClassFactory_CreateInstance (IClassFactory *iface, IUnknown *pUnkOuter, REFIID riid, PVOID *ppvObject)
 
static HRESULT STDMETHODCALLTYPE IDeskMonitor_IClassFactory_LockServer (IClassFactory *iface, BOOL fLock)
 
VOID IDeskMonitor_InitIface (PDESKMONITOR This)
 
HRESULT WINAPI DllGetClassObject (REFCLSID rclsid, REFIID riid, LPVOID *ppv)
 
HRESULT WINAPI DllCanUnloadNow (VOID)
 

Variables

LONG dll_refs = 0
 
static IShellPropSheetExtVtbl efvtIShellPropSheetExt
 
static IShellExtInitVtbl efvtIShellExtInit
 
static IClassFactoryVtbl efvtIClassFactory
 

Macro Definition Documentation

◆ NDEBUG

#define NDEBUG

Definition at line 3 of file shxiface.c.

Function Documentation

◆ DllCanUnloadNow()

HRESULT WINAPI DllCanUnloadNow ( VOID  )

Definition at line 206 of file shxiface.c.

207 {
208  return dll_refs == 0 ? S_OK : S_FALSE;
209 }
#define S_FALSE
Definition: winerror.h:2357
LONG dll_refs
Definition: shxiface.c:6
#define S_OK
Definition: intsafe.h:51

◆ DllGetClassObject()

HRESULT WINAPI DllGetClassObject ( REFCLSID  rclsid,
REFIID  riid,
LPVOID ppv 
)

Definition at line 186 of file shxiface.c.

189 {
190  if (ppv == NULL)
191  return E_INVALIDARG;
192 
193  *ppv = NULL;
194  if (IsEqualCLSID(rclsid,
196  {
198  ppv);
199  }
200 
201  DPRINT1("DllGetClassObject: CLASS_E_CLASSNOTAVAILABLE\n");
203 }
REFIID riid
Definition: precomp.h:44
REFIID LPVOID * ppv
Definition: atlbase.h:39
#define CLASS_E_CLASSNOTAVAILABLE
Definition: winerror.h:2663
#define E_INVALIDARG
Definition: ddrawi.h:101
smooth NULL
Definition: ftsmooth.c:416
HRESULT IDeskMonitor_Constructor(REFIID riid, LPVOID *ppv)
Definition: deskmon.c:711
#define DPRINT1
Definition: precomp.h:8
#define IsEqualCLSID(rclsid1, rclsid2)
Definition: guiddef.h:96
static const GUID CLSID_IDeskMonitor
Definition: deskmon.h:78

◆ IDeskMonitor_IClassFactory_AddRef()

static ULONG STDMETHODCALLTYPE IDeskMonitor_IClassFactory_AddRef ( IClassFactory iface)
static

Definition at line 124 of file shxiface.c.

125 {
127  return IDeskMonitor_AddRef(This);
128 }
#define interface_to_impl(instance, iface)
Definition: dwnl.c:36
ULONG IDeskMonitor_AddRef(PDESKMONITOR This)
Definition: deskmon.c:590

◆ IDeskMonitor_IClassFactory_CreateInstance()

static HRESULT STDMETHODCALLTYPE IDeskMonitor_IClassFactory_CreateInstance ( IClassFactory iface,
IUnknown pUnkOuter,
REFIID  riid,
PVOID ppvObject 
)
static

Definition at line 138 of file shxiface.c.

142 {
143  if (pUnkOuter != NULL &&
144  !IsEqualIID(riid,
145  &IID_IUnknown))
146  {
147  return CLASS_E_NOAGGREGATION;
148  }
149 
151  ppvObject);
152 }
REFIID riid
Definition: precomp.h:44
smooth NULL
Definition: ftsmooth.c:416
HRESULT IDeskMonitor_Constructor(REFIID riid, LPVOID *ppv)
Definition: deskmon.c:711
const GUID IID_IUnknown
REFIID LPVOID * ppvObject
Definition: precomp.h:44
#define CLASS_E_NOAGGREGATION
Definition: winerror.h:2662
#define IsEqualIID(riid1, riid2)
Definition: guiddef.h:95

◆ IDeskMonitor_IClassFactory_LockServer()

static HRESULT STDMETHODCALLTYPE IDeskMonitor_IClassFactory_LockServer ( IClassFactory iface,
BOOL  fLock 
)
static

Definition at line 155 of file shxiface.c.

157 {
158  if (fLock)
160  else
162 
163  return S_OK;
164 }
LONG dll_refs
Definition: shxiface.c:6
#define InterlockedDecrement
Definition: armddk.h:52
#define S_OK
Definition: intsafe.h:51
#define InterlockedIncrement
Definition: armddk.h:53

◆ IDeskMonitor_IClassFactory_QueryInterface()

static HRESULT STDMETHODCALLTYPE IDeskMonitor_IClassFactory_QueryInterface ( IClassFactory iface,
REFIID  iid,
PVOID pvObject 
)
static

Definition at line 113 of file shxiface.c.

116 {
119  iid,
120  pvObject);
121 }
HRESULT STDMETHODCALLTYPE IDeskMonitor_QueryInterface(PDESKMONITOR This, REFIID iid, PVOID *pvObject)
Definition: deskmon.c:621
#define interface_to_impl(instance, iface)
Definition: dwnl.c:36

◆ IDeskMonitor_IClassFactory_Release()

static ULONG STDMETHODCALLTYPE IDeskMonitor_IClassFactory_Release ( IClassFactory iface)
static

Definition at line 131 of file shxiface.c.

132 {
134  return IDeskMonitor_Release(This);
135 }
#define interface_to_impl(instance, iface)
Definition: dwnl.c:36
ULONG IDeskMonitor_Release(PDESKMONITOR This)
Definition: deskmon.c:602

◆ IDeskMonitor_InitIface()

VOID IDeskMonitor_InitIface ( PDESKMONITOR  This)

Definition at line 176 of file shxiface.c.

177 {
178  This->lpIShellPropSheetExtVtbl = &efvtIShellPropSheetExt;
179  This->lpIShellExtInitVtbl = &efvtIShellExtInit;
180  This->lpIClassFactoryVtbl = &efvtIClassFactory;
181 
183 }
static IShellPropSheetExtVtbl efvtIShellPropSheetExt
Definition: shxiface.c:57
static IShellExtInitVtbl efvtIShellExtInit
Definition: shxiface.c:104
static IClassFactoryVtbl efvtIClassFactory
Definition: shxiface.c:166
ULONG IDeskMonitor_AddRef(PDESKMONITOR This)
Definition: deskmon.c:590

Referenced by IDeskMonitor_Constructor().

◆ IDeskMonitor_IShellExtInit_AddRef()

static ULONG STDMETHODCALLTYPE IDeskMonitor_IShellExtInit_AddRef ( IShellExtInit iface)
static

Definition at line 78 of file shxiface.c.

79 {
81  return IDeskMonitor_AddRef(This);
82 }
#define interface_to_impl(instance, iface)
Definition: dwnl.c:36
ULONG IDeskMonitor_AddRef(PDESKMONITOR This)
Definition: deskmon.c:590

◆ IDeskMonitor_IShellExtInit_Initialize()

static HRESULT STDMETHODCALLTYPE IDeskMonitor_IShellExtInit_Initialize ( IShellExtInit iface,
LPCITEMIDLIST  pidlFolder,
IDataObject pdtobj,
HKEY  hkeyProgID 
)
static

Definition at line 92 of file shxiface.c.

96 {
99  pidlFolder,
100  pdtobj,
101  hkeyProgID);
102 }
HRESULT IDeskMonitor_Initialize(PDESKMONITOR This, LPCITEMIDLIST pidlFolder, IDataObject *pdtobj, HKEY hkeyProgID)
Definition: deskmon.c:655
#define interface_to_impl(instance, iface)
Definition: dwnl.c:36

◆ IDeskMonitor_IShellExtInit_QueryInterface()

static HRESULT STDMETHODCALLTYPE IDeskMonitor_IShellExtInit_QueryInterface ( IShellExtInit iface,
REFIID  iid,
PVOID pvObject 
)
static

Definition at line 67 of file shxiface.c.

70 {
73  iid,
74  pvObject);
75 }
HRESULT STDMETHODCALLTYPE IDeskMonitor_QueryInterface(PDESKMONITOR This, REFIID iid, PVOID *pvObject)
Definition: deskmon.c:621
#define interface_to_impl(instance, iface)
Definition: dwnl.c:36

◆ IDeskMonitor_IShellExtInit_Release()

static ULONG STDMETHODCALLTYPE IDeskMonitor_IShellExtInit_Release ( IShellExtInit iface)
static

Definition at line 85 of file shxiface.c.

86 {
88  return IDeskMonitor_Release(This);
89 }
#define interface_to_impl(instance, iface)
Definition: dwnl.c:36
ULONG IDeskMonitor_Release(PDESKMONITOR This)
Definition: deskmon.c:602

◆ IDeskMonitor_IShellPropSheetExt_AddPages()

static HRESULT STDMETHODCALLTYPE IDeskMonitor_IShellPropSheetExt_AddPages ( IShellPropSheetExt iface,
LPFNADDPROPSHEETPAGE  pfnAddPage,
LPARAM  lParam 
)
static

Definition at line 34 of file shxiface.c.

37 {
40  pfnAddPage,
41  lParam);
42 }
#define interface_to_impl(instance, iface)
Definition: dwnl.c:36
HRESULT IDeskMonitor_AddPages(PDESKMONITOR This, LPFNADDPROPSHEETPAGE pfnAddPage, LPARAM lParam)
Definition: deskmon.c:677
LPARAM lParam
Definition: combotst.c:139

◆ IDeskMonitor_IShellPropSheetExt_AddRef()

static ULONG STDMETHODCALLTYPE IDeskMonitor_IShellPropSheetExt_AddRef ( IShellPropSheetExt iface)
static

Definition at line 20 of file shxiface.c.

21 {
23  return IDeskMonitor_AddRef(This);
24 }
#define interface_to_impl(instance, iface)
Definition: dwnl.c:36
ULONG IDeskMonitor_AddRef(PDESKMONITOR This)
Definition: deskmon.c:590

◆ IDeskMonitor_IShellPropSheetExt_QueryInterface()

static HRESULT STDMETHODCALLTYPE IDeskMonitor_IShellPropSheetExt_QueryInterface ( IShellPropSheetExt iface,
REFIID  iid,
PVOID pvObject 
)
static

Definition at line 9 of file shxiface.c.

12 {
15  iid,
16  pvObject);
17 }
HRESULT STDMETHODCALLTYPE IDeskMonitor_QueryInterface(PDESKMONITOR This, REFIID iid, PVOID *pvObject)
Definition: deskmon.c:621
#define interface_to_impl(instance, iface)
Definition: dwnl.c:36

◆ IDeskMonitor_IShellPropSheetExt_Release()

static ULONG STDMETHODCALLTYPE IDeskMonitor_IShellPropSheetExt_Release ( IShellPropSheetExt iface)
static

Definition at line 27 of file shxiface.c.

28 {
30  return IDeskMonitor_Release(This);
31 }
#define interface_to_impl(instance, iface)
Definition: dwnl.c:36
ULONG IDeskMonitor_Release(PDESKMONITOR This)
Definition: deskmon.c:602

◆ IDeskMonitor_IShellPropSheetExt_ReplacePage()

static HRESULT STDMETHODCALLTYPE IDeskMonitor_IShellPropSheetExt_ReplacePage ( IShellPropSheetExt iface,
EXPPS  uPageID,
LPFNADDPROPSHEETPAGE  pfnReplacePage,
LPARAM  lParam 
)
static

Definition at line 45 of file shxiface.c.

49 {
52  uPageID,
53  pfnReplacePage,
54  lParam);
55 }
HRESULT IDeskMonitor_ReplacePage(PDESKMONITOR This, EXPPS uPageID, LPFNADDPROPSHEETPAGE pfnReplacePage, LPARAM lParam)
Definition: deskmon.c:701
#define interface_to_impl(instance, iface)
Definition: dwnl.c:36
LPARAM lParam
Definition: combotst.c:139

Variable Documentation

◆ dll_refs

LONG dll_refs = 0

Definition at line 6 of file shxiface.c.

◆ efvtIClassFactory

IClassFactoryVtbl efvtIClassFactory
static
Initial value:
=
{
}
static HRESULT STDMETHODCALLTYPE IDeskMonitor_IClassFactory_QueryInterface(IClassFactory *iface, REFIID iid, PVOID *pvObject)
Definition: shxiface.c:113
static ULONG STDMETHODCALLTYPE IDeskMonitor_IClassFactory_Release(IClassFactory *iface)
Definition: shxiface.c:131
static HRESULT STDMETHODCALLTYPE IDeskMonitor_IClassFactory_LockServer(IClassFactory *iface, BOOL fLock)
Definition: shxiface.c:155
static ULONG STDMETHODCALLTYPE IDeskMonitor_IClassFactory_AddRef(IClassFactory *iface)
Definition: shxiface.c:124
static HRESULT STDMETHODCALLTYPE IDeskMonitor_IClassFactory_CreateInstance(IClassFactory *iface, IUnknown *pUnkOuter, REFIID riid, PVOID *ppvObject)
Definition: shxiface.c:138

Definition at line 166 of file shxiface.c.

Referenced by IDeskMonitor_InitIface().

◆ efvtIShellExtInit

IShellExtInitVtbl efvtIShellExtInit
static
Initial value:
=
{
}
static ULONG STDMETHODCALLTYPE IDeskMonitor_IShellExtInit_AddRef(IShellExtInit *iface)
Definition: shxiface.c:78
static HRESULT STDMETHODCALLTYPE IDeskMonitor_IShellExtInit_QueryInterface(IShellExtInit *iface, REFIID iid, PVOID *pvObject)
Definition: shxiface.c:67
static ULONG STDMETHODCALLTYPE IDeskMonitor_IShellExtInit_Release(IShellExtInit *iface)
Definition: shxiface.c:85
static HRESULT STDMETHODCALLTYPE IDeskMonitor_IShellExtInit_Initialize(IShellExtInit *iface, LPCITEMIDLIST pidlFolder, IDataObject *pdtobj, HKEY hkeyProgID)
Definition: shxiface.c:92

Definition at line 104 of file shxiface.c.

Referenced by IDeskMonitor_InitIface().

◆ efvtIShellPropSheetExt

IShellPropSheetExtVtbl efvtIShellPropSheetExt
static
Initial value:
=
{
}
static ULONG STDMETHODCALLTYPE IDeskMonitor_IShellPropSheetExt_Release(IShellPropSheetExt *iface)
Definition: shxiface.c:27
static HRESULT STDMETHODCALLTYPE IDeskMonitor_IShellPropSheetExt_AddPages(IShellPropSheetExt *iface, LPFNADDPROPSHEETPAGE pfnAddPage, LPARAM lParam)
Definition: shxiface.c:34
static ULONG STDMETHODCALLTYPE IDeskMonitor_IShellPropSheetExt_AddRef(IShellPropSheetExt *iface)
Definition: shxiface.c:20
static HRESULT STDMETHODCALLTYPE IDeskMonitor_IShellPropSheetExt_QueryInterface(IShellPropSheetExt *iface, REFIID iid, PVOID *pvObject)
Definition: shxiface.c:9
static HRESULT STDMETHODCALLTYPE IDeskMonitor_IShellPropSheetExt_ReplacePage(IShellPropSheetExt *iface, EXPPS uPageID, LPFNADDPROPSHEETPAGE pfnReplacePage, LPARAM lParam)
Definition: shxiface.c:45

Definition at line 57 of file shxiface.c.

Referenced by IDeskMonitor_InitIface().