Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

105 lines
4.3 KiB

  1. #ifndef _INC_ICWACCT_H
  2. #define _INC_ICWACCT_H
  3. #include "icwcmn.h"
  4. #ifndef MAC
  5. #ifndef APPRENTICE_DEF
  6. #define APPRENTICE_DEF
  7. #define EXTERNAL_DIALOGID_MINIMUM 2000
  8. #define EXTERNAL_DIALOGID_MAXIMUM 3000
  9. typedef enum
  10. {
  11. CANCEL_PROMPT = 0,
  12. CANCEL_SILENT,
  13. CANCEL_REBOOT
  14. } CANCELTYPE;
  15. #endif
  16. // {796AD8F0-B2B7-11d0-8D69-00A0C9A06E1F}
  17. DEFINE_GUID(IID_IICWExtension, 0x796ad8f0, 0xb2b7, 0x11d0, 0x8d, 0x69, 0x0, 0xa0, 0xc9, 0xa0, 0x6e, 0x1f);
  18. interface IICWExtension : public IUnknown
  19. {
  20. public:
  21. virtual BOOL STDMETHODCALLTYPE AddExternalPage(HPROPSHEETPAGE hPage, UINT uDlgID) = 0;
  22. virtual BOOL STDMETHODCALLTYPE RemoveExternalPage(HPROPSHEETPAGE hPage, UINT uDlgID) = 0;
  23. virtual BOOL STDMETHODCALLTYPE ExternalCancel(CANCELTYPE type) = 0;
  24. virtual BOOL STDMETHODCALLTYPE SetFirstLastPage(UINT uFirstPageDlgID, UINT uLastPageDlgID) = 0;
  25. };
  26. typedef enum
  27. {
  28. CONNECT_LAN = 0,
  29. CONNECT_MANUAL,
  30. CONNECT_RAS
  31. };
  32. typedef struct tagCONNECTINFO
  33. {
  34. DWORD cbSize;
  35. DWORD type;
  36. char szConnectoid[MAX_PATH];
  37. } CONNECTINFO;
  38. // IICWApprentice::Save error values
  39. #define ERR_MAIL_ACCT 0x0001
  40. #define ERR_NEWS_ACCT 0x0002
  41. #define ERR_DIRSERV_ACCT 0x0004
  42. // IICWApprentice::AddWizardPages flags
  43. #define WIZ_NO_MAIL_ACCT 0x0001
  44. #define WIZ_NO_NEWS_ACCT 0x0002
  45. #define WIZ_NO_LDAP_ACCT 0x0004
  46. #define WIZ_USE_WIZARD97 0x0008
  47. #define WIZ_HOST_ICW_LAN 0x0010
  48. #define WIZ_HOST_ICW_PHONE 0x0020
  49. #define WIZ_HOST_ICW_MPHONE 0x0040 // Show multi modem page id necessary
  50. // {1438E820-B6D2-11D0-8D86-00C04FD6202B}
  51. DEFINE_GUID(IID_IICWApprentice, 0x1438E820L, 0xB6D2, 0x11D0, 0x8D, 0x86, 0x00, 0xC0, 0x4F, 0xD6, 0x20, 0x2B);
  52. interface IICWApprentice : public IUnknown
  53. {
  54. public:
  55. virtual HRESULT STDMETHODCALLTYPE Initialize(IICWExtension *pExt) = 0;
  56. virtual HRESULT STDMETHODCALLTYPE AddWizardPages(DWORD dwFlags) = 0;
  57. virtual HRESULT STDMETHODCALLTYPE GetConnectionInformation(CONNECTINFO *pInfo) = 0;
  58. virtual HRESULT STDMETHODCALLTYPE SetConnectionInformation(CONNECTINFO *pInfo) = 0;
  59. virtual HRESULT STDMETHODCALLTYPE Save(HWND hwnd, DWORD *pdwError) = 0;
  60. virtual HRESULT STDMETHODCALLTYPE SetPrevNextPage(UINT uPrevPageDlgID, UINT uNextPageDlgID) = 0;
  61. };
  62. // {ced77e0e-53d7-11d2-9ab6-00a0c9b81d84}
  63. DEFINE_GUID(IID_IICWApprenticeEx, 0xced77e0e, 0x53d7, 0x11d2, 0x9A, 0xB6, 0x00, 0xA0, 0xC9, 0xB8, 0x1D, 0x84);
  64. interface IICWApprenticeEx : public IUnknown
  65. {
  66. public:
  67. virtual HRESULT STDMETHODCALLTYPE Initialize (IICWExtension *pExt) = 0;
  68. virtual HRESULT STDMETHODCALLTYPE AddWizardPages (DWORD dwFlags) = 0;
  69. virtual HRESULT STDMETHODCALLTYPE GetConnectionInformation (CONNECTINFO *pInfo) = 0;
  70. virtual HRESULT STDMETHODCALLTYPE SetDlgHwnd (HWND hDlg) = 0;
  71. virtual HRESULT STDMETHODCALLTYPE SetConnectionInformation (CONNECTINFO *pInfo) = 0;
  72. virtual HRESULT STDMETHODCALLTYPE Save (HWND hwnd, DWORD *pdwError) = 0;
  73. virtual HRESULT STDMETHODCALLTYPE SetPrevNextPage (UINT uPrevPageDlgID, UINT uNextPageDlgID) = 0;
  74. virtual HRESULT STDMETHODCALLTYPE ProcessCustomFlags (DWORD dwFlags) = 0;
  75. virtual HRESULT STDMETHODCALLTYPE SetStateDataFromExeToDll (LPCMNSTATEDATA lpData) = 0;
  76. virtual HRESULT STDMETHODCALLTYPE SetStateDataFromDllToExe (LPCMNSTATEDATA lpData) = 0;
  77. };
  78. // Athena's CLSID
  79. // {1438E821-B6D2-11D0-8D86-00C04FD6202B}
  80. DEFINE_GUID(CLSID_ApprenticeAcctMgr, 0x1438E821L, 0xB6D2, 0x11D0, 0x8D, 0x86, 0x00, 0xC0, 0x4F, 0xD6, 0x20, 0x2B);
  81. //ICW's CLSID
  82. // {8EE42293-C315-11d0-8D6F-00A0C9A06E1F}
  83. DEFINE_GUID(CLSID_ApprenticeICW, 0x8ee42293L, 0xc315, 0x11d0, 0x8d, 0x6f, 0x0, 0xa0, 0xc9, 0xa0, 0x6e, 0x1f);
  84. HRESULT WINAPI CreateAccountsFromFile(LPSTR lpFile, DWORD dwFlags);
  85. HRESULT WINAPI CreateAccountsFromFileEx(LPSTR lpFile, CONNECTINFO *pci, DWORD dwFlags);
  86. #endif // !MAC
  87. #endif // _INC_ICWACCT_H