IPersistStream.cs 1.2 KB

123456789101112131415161718192021222324252627282930313233
  1. //------------------------------------------------------------------------------
  2. // <copyright file="IPersistStream.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. namespace Experimental.System.Messaging.Interop
  10. {
  11. [ComImport(),
  12. Guid("00000109-0000-0000-C000-000000000046"),
  13. InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
  14. internal interface IPersistStream {
  15. [SuppressUnmanagedCodeSecurity()]
  16. void GetClassID([Out] out Guid pClassID);
  17. [SuppressUnmanagedCodeSecurity()]
  18. int IsDirty();
  19. [SuppressUnmanagedCodeSecurity()]
  20. void Load([In, MarshalAs(UnmanagedType.Interface)] IStream pstm);
  21. [SuppressUnmanagedCodeSecurity()]
  22. void Save([In, MarshalAs(UnmanagedType.Interface)] IStream pstm,
  23. [In, MarshalAs(UnmanagedType.Bool)] bool fClearDirty);
  24. [SuppressUnmanagedCodeSecurity()]
  25. long GetSizeMax();
  26. }
  27. }