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.

80 lines
2.4 KiB

  1. //+-------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1996.
  5. //
  6. // File: forward.idl
  7. //
  8. // Synopsis: DCOM95 RPCSS interface for forwarding remote activation calls.
  9. //
  10. // Note that this interface is tied closely to IOxidResolver because
  11. // RemoteActivation includes information otherwise retrieved from ResolveOXID.
  12. //
  13. //--------------------------------------------------------------------------
  14. //
  15. // ForwardRemoteActivation is called to forwqard a remote activation request
  16. // to a remote SCM.
  17. //
  18. // Note that the ResolveOxid parameters are included as well, to prevent
  19. // the necessity for a second RPC during a remote activation. However,
  20. // the client receives the OXID as an out param since it is not known
  21. // before connecting to the server.
  22. //
  23. const unsigned long MODE_GET_CLASS_OBJECT = 0xffffffff;
  24. [
  25. uuid(260613d0-1655-11d0-af92-00aa00b50686),
  26. version(1.0),
  27. pointer_default(unique)
  28. #ifndef RAW
  29. ,object
  30. #endif
  31. ]
  32. interface IRemoteActivator
  33. #ifndef RAW
  34. : IUnknown
  35. #endif
  36. {
  37. #ifndef DO_NO_IMPORTS
  38. import "iface.idl";
  39. import "obase.idl";
  40. import "unknwn.idl";
  41. #endif // DO_NO_IMPORTS
  42. #include "comhndl.h"
  43. COM_DEFINES(Remact)
  44. #ifdef RAW
  45. error_status_t ActivateOnRemoteMachine(
  46. #else
  47. HRESULT ActivateOnRemoteMachine(
  48. #endif
  49. COM_HANDLE
  50. [in] const GUID *Clsid,
  51. [in, string, unique] WCHAR *pwszServerName,
  52. [in, string, unique] WCHAR *pwszPathForServer,
  53. [in, unique] COAUTHINFO *pAuthInfo,
  54. [in, unique] MInterfacePointer *pObjectStorage,
  55. [in] DWORD ClientImpLevel,
  56. [in] DWORD Mode,
  57. [in] DWORD Interfaces,
  58. [in,unique,size_is(Interfaces)] IID *pIIDs,
  59. [out] USHORT *pProtseqId,
  60. [out] OXID *pOxid,
  61. [out] DUALSTRINGARRAY **ppdsaOxidBindings,
  62. [out] IPID *pipidRemUnknown,
  63. [out] DWORD *pAuthnHint,
  64. [out] HRESULT *phr,
  65. [out,size_is(Interfaces)] MInterfacePointer **ppInterfaceData,
  66. [out,size_is(Interfaces)] HRESULT *pResults
  67. );
  68. }