| 1 |
/** |
| 2 |
* This file has no copyright assigned and is placed in the Public Domain. |
| 3 |
* This file is part of the mingw-w64 runtime package. |
| 4 |
* No warranty is given; refer to the file DISCLAIMER.PD within this package. |
| 5 |
*/ |
| 6 |
DEFINE_GUID(CLSID_DsAdminCreateObj,0xe301a009,0xf901,0x11d2,0x82,0xb9,0x0,0xc0,0x4f,0x68,0x92,0x8b); |
| 7 |
DEFINE_GUID(IID_IDsAdminCreateObj,0x53554a38,0xf902,0x11d2,0x82,0xb9,0x0,0xc0,0x4f,0x68,0x92,0x8b); |
| 8 |
DEFINE_GUID(IID_IDsAdminNewObj,0xf2573587,0xe6fc,0x11d2,0x82,0xaf,0x0,0xc0,0x4f,0x68,0x92,0x8b); |
| 9 |
DEFINE_GUID(IID_IDsAdminNewObjPrimarySite,0xbe2b487e,0xf904,0x11d2,0x82,0xb9,0x0,0xc0,0x4f,0x68,0x92,0x8b); |
| 10 |
DEFINE_GUID(IID_IDsAdminNewObjExt,0x6088eae2,0xe7bf,0x11d2,0x82,0xaf,0x0,0xc0,0x4f,0x68,0x92,0x8b); |
| 11 |
DEFINE_GUID(IID_IDsAdminNotifyHandler,0xe4a2b8b3,0x5a18,0x11d2,0x97,0xc1,0x0,0xa0,0xc9,0xa0,0x6d,0x2d); |
| 12 |
|
| 13 |
#ifndef _DSADMIN_H |
| 14 |
#define _DSADMIN_H |
| 15 |
|
| 16 |
#undef INTERFACE |
| 17 |
#define INTERFACE IDsAdminCreateObj |
| 18 |
DECLARE_INTERFACE_(IDsAdminCreateObj,IUnknown) { |
| 19 |
STDMETHOD(QueryInterface)(THIS_ REFIID riid,LPVOID *ppvObj) PURE; |
| 20 |
STDMETHOD_(ULONG,AddRef)(THIS) PURE; |
| 21 |
STDMETHOD_(ULONG,Release)(THIS) PURE; |
| 22 |
STDMETHOD(Initialize)(THIS_ IADsContainer *pADsContainerObj,IADs *pADsCopySource,LPCWSTR lpszClassName) PURE; |
| 23 |
STDMETHOD(CreateModal)(THIS_ HWND hwndParent,IADs **ppADsObj) PURE; |
| 24 |
}; |
| 25 |
|
| 26 |
#undef INTERFACE |
| 27 |
#define INTERFACE IDsAdminNewObj |
| 28 |
DECLARE_INTERFACE_(IDsAdminNewObj,IUnknown) { |
| 29 |
STDMETHOD(QueryInterface)(THIS_ REFIID riid,LPVOID *ppvObj) PURE; |
| 30 |
STDMETHOD_(ULONG,AddRef)(THIS) PURE; |
| 31 |
STDMETHOD_(ULONG,Release)(THIS) PURE; |
| 32 |
STDMETHOD(SetButtons)(THIS_ ULONG nCurrIndex,WINBOOL bValid) PURE; |
| 33 |
STDMETHOD(GetPageCounts)(THIS_ LONG *pnTotal,LONG *pnStartIndex) PURE; |
| 34 |
}; |
| 35 |
|
| 36 |
#undef INTERFACE |
| 37 |
#define INTERFACE IDsAdminNewObjPrimarySite |
| 38 |
DECLARE_INTERFACE_(IDsAdminNewObjPrimarySite,IUnknown) { |
| 39 |
STDMETHOD(QueryInterface)(THIS_ REFIID riid,LPVOID *ppvObj) PURE; |
| 40 |
STDMETHOD_(ULONG,AddRef)(THIS) PURE; |
| 41 |
STDMETHOD_(ULONG,Release)(THIS) PURE; |
| 42 |
STDMETHOD(CreateNew)(THIS_ LPCWSTR pszName) PURE; |
| 43 |
STDMETHOD(Commit)(THIS_) PURE; |
| 44 |
}; |
| 45 |
|
| 46 |
typedef struct { |
| 47 |
DWORD dwSize; |
| 48 |
HICON hObjClassIcon; |
| 49 |
LPWSTR lpszWizTitle; |
| 50 |
LPWSTR lpszContDisplayName; |
| 51 |
} DSA_NEWOBJ_DISPINFO,*LPDSA_NEWOBJ_DISPINFO; |
| 52 |
|
| 53 |
#define DSA_NEWOBJ_CTX_PRECOMMIT 0x00000001 |
| 54 |
#define DSA_NEWOBJ_CTX_COMMIT 0x00000002 |
| 55 |
#define DSA_NEWOBJ_CTX_POSTCOMMIT 0x00000003 |
| 56 |
#define DSA_NEWOBJ_CTX_CLEANUP 0x00000004 |
| 57 |
|
| 58 |
#undef INTERFACE |
| 59 |
#define INTERFACE IDsAdminNewObjExt |
| 60 |
DECLARE_INTERFACE_(IDsAdminNewObjExt,IUnknown) { |
| 61 |
STDMETHOD(QueryInterface)(THIS_ REFIID riid,LPVOID *ppvObj) PURE; |
| 62 |
STDMETHOD_(ULONG,AddRef)(THIS) PURE; |
| 63 |
STDMETHOD_(ULONG,Release)(THIS) PURE; |
| 64 |
STDMETHOD(Initialize)(THIS_ IADsContainer *pADsContainerObj,IADs *pADsCopySource,LPCWSTR lpszClassName,IDsAdminNewObj *pDsAdminNewObj,LPDSA_NEWOBJ_DISPINFO pDispInfo) PURE; |
| 65 |
STDMETHOD(AddPages)(THIS_ LPFNADDPROPSHEETPAGE lpfnAddPage,LPARAM lParam) PURE; |
| 66 |
STDMETHOD(SetObject)(THIS_ IADs *pADsObj) PURE; |
| 67 |
STDMETHOD(WriteData)(THIS_ HWND hWnd,ULONG uContext) PURE; |
| 68 |
STDMETHOD(OnError)(THIS_ HWND hWnd,HRESULT hr,ULONG uContext) PURE; |
| 69 |
STDMETHOD(GetSummaryInfo)(THIS_ BSTR *pBstrText) PURE; |
| 70 |
}; |
| 71 |
|
| 72 |
#define DSA_NOTIFY_DEL 0x00000001 |
| 73 |
#define DSA_NOTIFY_REN 0x00000002 |
| 74 |
#define DSA_NOTIFY_MOV 0x00000004 |
| 75 |
#define DSA_NOTIFY_PROP 0x00000008 |
| 76 |
|
| 77 |
#define DSA_NOTIFY_ALL (DSA_NOTIFY_DEL|DSA_NOTIFY_REN|DSA_NOTIFY_MOV|DSA_NOTIFY_PROP) |
| 78 |
|
| 79 |
#define DSA_NOTIFY_FLAG_ADDITIONAL_DATA 0x00000002 |
| 80 |
#define DSA_NOTIFY_FLAG_FORCE_ADDITIONAL_DATA 0x00000001 |
| 81 |
|
| 82 |
#undef INTERFACE |
| 83 |
#define INTERFACE IDsAdminNotifyHandler |
| 84 |
DECLARE_INTERFACE_(IDsAdminNotifyHandler,IUnknown) { |
| 85 |
STDMETHOD(QueryInterface)(THIS_ REFIID riid,LPVOID *ppvObj) PURE; |
| 86 |
STDMETHOD_(ULONG,AddRef)(THIS) PURE; |
| 87 |
STDMETHOD_(ULONG,Release)(THIS) PURE; |
| 88 |
STDMETHOD(Initialize)(THIS_ IDataObject *pExtraInfo,ULONG *puEventFlags) PURE; |
| 89 |
STDMETHOD(Begin)(THIS_ ULONG uEvent,IDataObject *pArg1,IDataObject *pArg2,ULONG *puFlags,BSTR *pBstr) PURE; |
| 90 |
STDMETHOD(Notify)(THIS_ ULONG nItem,ULONG uFlags) PURE; |
| 91 |
STDMETHOD(End)(THIS_) PURE; |
| 92 |
}; |
| 93 |
#endif |