Source code of Windows XP (NT5)
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.

124 lines
4.8 KiB

  1. cpp_quote("/*++")
  2. cpp_quote(" ")
  3. cpp_quote("Copyright (c) 1997-2001 Microsoft Corporation")
  4. cpp_quote(" ")
  5. cpp_quote("Module Name: iwamreg.h")
  6. cpp_quote(" ")
  7. cpp_quote(" WAM (Web Application Manager) Interfaces")
  8. cpp_quote(" ")
  9. cpp_quote ("--*/")
  10. // wamreg.idl : IDL source for wamreg.dll
  11. //
  12. // This file will be processed by the MIDL tool to
  13. // produce the type library (wamreg.tlb) and marshalling code.
  14. import "oaidl.idl";
  15. import "ocidl.idl";
  16. cpp_quote("#ifndef __WAMREG_IADM__IID")
  17. cpp_quote("#define __WAMREG_IADM__IID")
  18. cpp_quote("DEFINE_GUID(IID_IWamAdmin, 0x29822AB7, 0xF302, 0x11D0, 0x99, 0x53, 0x00, 0xC0, 0x4F, 0xD9, 0x19, 0xC1);")
  19. cpp_quote("DEFINE_GUID(IID_IWamAdmin2, 0x29822AB8, 0xF302, 0x11D0, 0x99, 0x53, 0x00, 0xC0, 0x4F, 0xD9, 0x19, 0xC1);")
  20. cpp_quote("DEFINE_GUID(IID_IIISApplicationAdmin, 0x7C4E1804, 0xE342, 0x483D, 0xA4, 0x3E, 0xA8, 0x50, 0xCF, 0xCC, 0x8D, 0x18);")
  21. cpp_quote("DEFINE_GUID(LIBID_WAMREGLib, 0x29822AA8, 0xF302, 0x11D0, 0x99, 0x53, 0x00, 0xC0, 0x4F, 0xD9, 0x19, 0xC1);")
  22. cpp_quote("DEFINE_GUID(CLSID_WamAdmin, 0x61738644, 0xF196, 0x11D0, 0x99, 0x53, 0x00, 0xC0, 0x4F, 0xD9, 0x19, 0xC1);")
  23. cpp_quote("#endif //__WAMREG_IADM__IID")
  24. cpp_quote("#define APPSTATUS_STOPPED 0")
  25. cpp_quote("#define APPSTATUS_RUNNING 1")
  26. cpp_quote("#define APPSTATUS_NOTDEFINED 2")
  27. typedef enum {
  28. eAppRunInProc,
  29. eAppRunOutProcIsolated,
  30. eAppRunOutProcInDefaultPool
  31. } EAppMode;
  32. [
  33. uuid(29822AB7-F302-11D0-9953-00C04FD919C1),
  34. helpstring("IWamAdmin Interface"),
  35. pointer_default(unique)
  36. ]
  37. interface IWamAdmin : IUnknown
  38. {
  39. [helpstring("method Create")] HRESULT AppCreate([in, unique, string] LPCWSTR szMDPath, [in] BOOL fInProc);
  40. [helpstring("method Delete")] HRESULT AppDelete([in, unique, string] LPCWSTR szMDPath, [in] BOOL fRecursive);
  41. [helpstring("method UnLoad")] HRESULT AppUnLoad([in, unique, string] LPCWSTR szMDPath, [in] BOOL fRecursive);
  42. [helpstring("method GetStatus")] HRESULT AppGetStatus([in, unique, string] LPCWSTR szMDPath, [out] DWORD *pdwAppStatus);
  43. [helpstring("method DeleteRecoverable")] HRESULT AppDeleteRecoverable([in, unique, string] LPCWSTR szMDPath, [in] BOOL fRecursive);
  44. [helpstring("method Recover")] HRESULT AppRecover([in, unique, string] LPCWSTR szMDPath, [in] BOOL fRecursive);
  45. }
  46. [
  47. uuid(29822AB8-F302-11D0-9953-00C04FD919C1),
  48. helpstring("IWamAdmin2 Interface"),
  49. pointer_default(unique)
  50. ]
  51. interface IWamAdmin2 : IWamAdmin
  52. {
  53. [helpstring("method AppCreate2")] HRESULT AppCreate2([in, unique, string] LPCWSTR szMDPath,
  54. [in] DWORD dwAppMode
  55. );
  56. }
  57. [
  58. uuid(7C4E1804-E342-483D-A43E-A850CFCC8D18),
  59. helpstring("IIISApplicationAdmin Interface"),
  60. pointer_default(unique)
  61. ]
  62. interface IIISApplicationAdmin : IUnknown
  63. {
  64. [helpstring("method Create")] HRESULT CreateApplication([in, unique, string] LPCWSTR szMDPath,
  65. [in] DWORD dwAppMode,
  66. [in, unique, string] LPCWSTR szAppPoolId,
  67. [in] BOOL fCreatePool
  68. );
  69. [helpstring("method Delete")] HRESULT DeleteApplication([in, unique, string] LPCWSTR szMDPath,
  70. [in] BOOL fRecursive
  71. );
  72. [helpstring("method CreateApplicationPool")] HRESULT CreateApplicationPool([in, unique, string] LPCWSTR szPool);
  73. [helpstring("method DeteleApplicationPool")] HRESULT DeleteApplicationPool([in, unique, string] LPCWSTR szPool);
  74. [helpstring("method EnumerateApplicationsInPool")] HRESULT EnumerateApplicationsInPool([in, unique, string] LPCWSTR szPool,
  75. [out] BSTR* bstrBuffer
  76. );
  77. [helpstring("method RecycleApplicationPool")] HRESULT RecycleApplicationPool([in, unique, string] LPCWSTR szPool);
  78. [helpstring("method GetProcessMode")] HRESULT GetProcessMode([out] DWORD * pdwMode);
  79. }
  80. [
  81. uuid(29822AA8-F302-11D0-9953-00C04FD919C1),
  82. version(1.0),
  83. helpstring("wamreg 1.0 Type Library")
  84. ]
  85. library WAMREGLib
  86. {
  87. importlib("stdole2.tlb");
  88. [
  89. uuid(61738644-F196-11D0-9953-00C04FD919C1),
  90. helpstring("WamAdmin Class")
  91. ]
  92. coclass WamAdmin
  93. {
  94. [default] interface IWamAdmin;
  95. };
  96. };