ITransaction.cs 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. //------------------------------------------------------------------------------
  2. // <copyright file="ITransaction.cs" company="Microsoft">
  3. // Copyright (c) Microsoft Corporation. All rights reserved.
  4. // </copyright>
  5. //------------------------------------------------------------------------------
  6. using System;
  7. using System.Runtime.InteropServices;
  8. using System.Security;
  9. using UnmanagedType = System.Runtime.InteropServices.UnmanagedType;
  10. namespace Experimental.System.Messaging.Interop
  11. {
  12. [ComImport, Guid("0FB15084-AF41-11CE-BD2B-204C4F4F5020"), InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)]
  13. internal interface ITransaction
  14. {
  15. [return: MarshalAs(UnmanagedType.I4)]
  16. [SuppressUnmanagedCodeSecurity()]
  17. [PreserveSig]
  18. int Commit(
  19. [In, MarshalAs(UnmanagedType.I4)]
  20. int fRetaining,
  21. [In, MarshalAs(UnmanagedType.U4)]
  22. int grfTC,
  23. [In, MarshalAs(UnmanagedType.U4)]
  24. int grfRM);
  25. [return: MarshalAs(UnmanagedType.I4)]
  26. [SuppressUnmanagedCodeSecurity()]
  27. [PreserveSig]
  28. int Abort(
  29. [In, MarshalAs(UnmanagedType.U4)]
  30. int pboidReason,
  31. [In, MarshalAs(UnmanagedType.I4)]
  32. int fRetaining,
  33. [In, MarshalAs(UnmanagedType.I4)]
  34. int fAsync);
  35. [return: MarshalAs(UnmanagedType.I4)]
  36. [SuppressUnmanagedCodeSecurity()]
  37. [PreserveSig]
  38. int GetTransactionInfo(
  39. [In, Out]
  40. IntPtr /* XACTTRANSINFO */ pinfo);
  41. }
  42. }