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.

113 lines
1.9 KiB

  1. import "oaidl.idl";
  2. import "ocidl.idl";
  3. [
  4. uuid(5dbe4242-0746-11d3-b56e-00c04f79ddc2),
  5. object,
  6. dual,
  7. helpstring("Microsoft ICloneSecurityPrincipal")
  8. ]
  9. interface ICloneSecurityPrincipal : IDispatch
  10. {
  11. [id(0)]
  12. HRESULT
  13. Connect(
  14. [in] BSTR srcDomainController,
  15. [in] BSTR srcDomain,
  16. [in] BSTR dstDomainController,
  17. [in] BSTR dstDomain);
  18. [id(1)]
  19. HRESULT
  20. CopyDownlevelUserProperties(
  21. [in] BSTR srcSamName,
  22. [in] BSTR dstSamName,
  23. [in] long flags);
  24. [id(2)]
  25. HRESULT
  26. AddSidHistory(
  27. [in] BSTR srcPrincipalSamName,
  28. [in] BSTR dstPrincipalSamName,
  29. [in] long flags);
  30. [id(3)]
  31. HRESULT
  32. GetMembersSIDs(
  33. [in] BSTR dstGroupDN,
  34. [out, retval] VARIANT * pVal );
  35. }
  36. [
  37. object,
  38. uuid(BCDB5F36-3AFE-11D3-B6B8-0000F87A3388),
  39. dual,
  40. helpstring("IADsSID Interface"),
  41. pointer_default(unique)
  42. ]
  43. interface IADsSID : IDispatch
  44. {
  45. [id(4)]
  46. HRESULT
  47. GetAs(
  48. [in] long lFormat,
  49. [out, retval] VARIANT *pVar);
  50. [id(5)]
  51. HRESULT
  52. SetAs(
  53. [in] long lFormat,
  54. [in] VARIANT varData);
  55. enum ADS_SID_FORMAT {
  56. ADS_SID_RAW,
  57. ADS_SID_HEXSTRING,
  58. ADS_SID_SAM,
  59. ADS_SID_UPN,
  60. ADS_SID_SDDL,
  61. ADS_SID_WINNT_PATH,
  62. ADS_SID_ACTIVE_DIRECTORY_PATH,
  63. ADS_SID_SID_BINDING
  64. };
  65. };
  66. [
  67. object,
  68. uuid(877C4BEE-3986-11D3-B6B8-0000F87A3388),
  69. dual,
  70. helpstring("IADsError Interface"),
  71. pointer_default(unique)
  72. ]
  73. interface IADsError : IDispatch
  74. {
  75. [id(6)]
  76. HRESULT
  77. GetErrorMsg(
  78. [in] long hrErr,
  79. [out,retval] BSTR *pbMsg);
  80. };
  81. [
  82. uuid(5bf93a8e-0746-11d3-b56e-00c04f79ddc2),
  83. version(1.0),
  84. helpstring("Microsoft CloneSecurityPrincipal 1.0"),
  85. lcid(0)
  86. ]
  87. library CloneSecurityPrincipalLib
  88. {
  89. importlib("stdole32.tlb");
  90. importlib("stdole2.tlb");
  91. [
  92. uuid(aa7f1454-0745-11d3-b56e-00c04f79ddc2),
  93. helpstring("CloneSecurityPrincipal Class")
  94. ]
  95. coclass CloneSecurityPrincipal
  96. {
  97. interface IUnknown;
  98. [default] interface ICloneSecurityPrincipal;
  99. interface IADsSID;
  100. interface IADsError;
  101. };
  102. };