4 extern HINSTANCE hInstance
;
19 /******************************************************************************
21 ******************************************************************************/
23 static const GUID CLSID_ICompatibilityPage
= {0x513D916F,0x2A8E,0x4F51,{0xAE,0xAB,0x0C,0xBC,0x76,0xFB,0x1A,0xF9}}; /* F8 on XP! */
25 typedef struct ICompatibilityPage
*LPCOMPATIBILITYPAGE
;
27 /* IShellPropSheetExt */
28 typedef struct ifaceIShellPropSheetExtVbtl ifaceIShellPropSheetExtVbtl
;
29 struct ifaceIShellPropSheetExtVbtl
31 HRESULT (STDMETHODCALLTYPE
*AddPages
)(LPCOMPATIBILITYPAGE
this,
32 LPFNADDPROPSHEETPAGE lpfnAddPage
,
34 HRESULT (STDMETHODCALLTYPE
*ReplacePage
)(LPCOMPATIBILITYPAGE
this,
36 LPFNADDPROPSHEETPAGE lpfnReplacePage
,
41 typedef struct ifaceIShellExtInitVbtl ifaceIShellExtInitVbtl
;
42 struct ifaceIShellExtInitVbtl
44 HRESULT (STDMETHODCALLTYPE
*Initialize
)(LPCOMPATIBILITYPAGE
this,
45 LPCITEMIDLIST pidlFolder
,
51 typedef struct ifaceIClassFactoryVbtl ifaceIClassFactoryVbtl
;
52 struct ifaceIClassFactoryVbtl
54 HRESULT (STDMETHODCALLTYPE
*CreateInstance
)(LPCOMPATIBILITYPAGE
this,
58 HRESULT (STDMETHODCALLTYPE
*LockServer
)(LPCOMPATIBILITYPAGE
this,
62 /* ICompatibilityPage */
63 typedef struct ifaceICompatibilityPageVbtl ifaceICompatibilityPageVbtl
;
64 struct ifaceICompatibilityPageVbtl
67 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(LPCOMPATIBILITYPAGE
this,
70 ULONG (STDMETHODCALLTYPE
*AddRef
)(LPCOMPATIBILITYPAGE
this);
71 ULONG (STDMETHODCALLTYPE
*Release
)(LPCOMPATIBILITYPAGE
this);
75 ifaceIShellPropSheetExtVbtl IShellPropSheetExt
;
76 ifaceIShellExtInitVbtl IShellExtInit
;
77 ifaceIClassFactoryVbtl IClassFactory
;
81 typedef struct ICompatibilityPage
84 ifaceICompatibilityPageVbtl
* lpVtbl
;
86 /* ICompatibilityPage fields */
87 TCHAR szFile
[MAX_PATH
+ 1];
96 HRESULT STDMETHODCALLTYPE
ICompatibilityPage_fnQueryInterface(LPCOMPATIBILITYPAGE
this,
99 ULONG STDMETHODCALLTYPE
ICompatibilityPage_fnAddRef(LPCOMPATIBILITYPAGE
this);
100 ULONG STDMETHODCALLTYPE
ICompatibilityPage_fnRelease(LPCOMPATIBILITYPAGE
this);
102 /* IShellPropSheetExt */
103 HRESULT STDMETHODCALLTYPE
ICompatibilityPage_fnAddPages(LPCOMPATIBILITYPAGE
this,
104 LPFNADDPROPSHEETPAGE lpfnAddPage
,
106 HRESULT STDMETHODCALLTYPE
ICompatibilityPage_fnReplacePage(LPCOMPATIBILITYPAGE
this,
108 LPFNADDPROPSHEETPAGE lpfnReplacePage
,
111 HRESULT STDMETHODCALLTYPE
ICompatibilityPage_fnInitialize(LPCOMPATIBILITYPAGE
this,
112 LPCITEMIDLIST pidlFolder
,
116 HRESULT STDMETHODCALLTYPE
ICompatibilityPage_fnCreateInstance(LPCOMPATIBILITYPAGE
this,
120 HRESULT STDMETHODCALLTYPE
ICompatibilityPage_fnLockServer(LPCOMPATIBILITYPAGE
this,
124 #endif /* __SLAYER_H */