using System; using System.Collections.Generic; using System.Linq; using System.Runtime.InteropServices; using System.Text; namespace PostInstaller { [ComImportAttribute] [GuidAttribute("0000010B-0000-0000-C000-000000000046")] [InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)] public interface IPersistFile { // can't get this to go if I extend IPersist, // so put it here: [PreserveSig] int GetClassID(out Guid pClassID); //[helpstring("Checks for changes since // last file write")] [PreserveSig] int IsDirty(); //[helpstring("Opens the specified file and // initializes the object from its contents")] int Load( [MarshalAs(UnmanagedType.LPWStr)] string pszFileName, ulong dwMode); //[helpstring("Saves the object into // the specified file")] void Save( [MarshalAs(UnmanagedType.LPWStr)] string pszFileName, [MarshalAs(UnmanagedType.Bool)] bool fRemember); //[helpstring("Notifies the object that save // is completed")] void SaveCompleted( [MarshalAs(UnmanagedType.LPWStr)] string pszFileName); //[helpstring("Gets the current name of the // file associated with the object")] void GetCurFile( [MarshalAs(UnmanagedType.LPWStr)] out string ppszFileName); } }