using System.Runtime.CompilerServices; using System.Runtime.InteropServices; namespace Interop.Lmx; [ComImport] [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] [Guid("E1C5680E-DA6A-413B-8DE5-D5F2EA71A40E")] public interface IFileRepository { [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] void SetPimRepository([In][MarshalAs(UnmanagedType.LPWStr)] string szPimRepositoryMachineName); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] void PutVendorFileToRepository([In][MarshalAs(UnmanagedType.LPWStr)] string szGalaxyName, [In][MarshalAs(UnmanagedType.LPWStr)] string szFilename, [In][MarshalAs(UnmanagedType.LPWStr)] string szVendorname, [In][MarshalAs(UnmanagedType.LPWStr)] string szGroupID, [In][MarshalAs(UnmanagedType.Interface)] IStream pStrmFile); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] void DeleteVendorFileFromRepository([In][MarshalAs(UnmanagedType.LPWStr)] string szGalaxyName, [In][MarshalAs(UnmanagedType.LPWStr)] string szFilename, [In][MarshalAs(UnmanagedType.LPWStr)] string szVendorname, [In][MarshalAs(UnmanagedType.LPWStr)] string szGroupID); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] void GetVendorFileFromRepository([In][MarshalAs(UnmanagedType.LPWStr)] string szGalaxyName, [In][MarshalAs(UnmanagedType.LPWStr)] string szFilename, [In][MarshalAs(UnmanagedType.LPWStr)] string szVendorname, [In][MarshalAs(UnmanagedType.LPWStr)] string szGroupID, [MarshalAs(UnmanagedType.Interface)] out IStream ppStrmFile); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] void RenameVendorFileInRepository([In][MarshalAs(UnmanagedType.LPWStr)] string szGalaxyName, [In][MarshalAs(UnmanagedType.LPWStr)] string szVendorname, [In][MarshalAs(UnmanagedType.LPWStr)] string szGroupID, [In][MarshalAs(UnmanagedType.LPWStr)] string szOldFilename, [In][MarshalAs(UnmanagedType.LPWStr)] string szNewFilename); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] void RenameVendorname([In][MarshalAs(UnmanagedType.LPWStr)] string szGalaxyName, [In][MarshalAs(UnmanagedType.LPWStr)] string szOldVendorname, [In][MarshalAs(UnmanagedType.LPWStr)] string szNewVendorname); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] [return: MarshalAs(UnmanagedType.BStr)] string GetGroupIDPath([In][MarshalAs(UnmanagedType.LPWStr)] string szGalaxyName, [In][MarshalAs(UnmanagedType.LPWStr)] string szVendorname, [In][MarshalAs(UnmanagedType.LPWStr)] string szGroupID); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] [return: MarshalAs(UnmanagedType.BStr)] string GetGalaxyPathForResource([In][MarshalAs(UnmanagedType.LPWStr)] string szGalaxyName, [In][MarshalAs(UnmanagedType.LPWStr)] string szResource); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] void PutGalaxyFileToRepository([In][MarshalAs(UnmanagedType.LPWStr)] string szFullFilename, [In][MarshalAs(UnmanagedType.Interface)] IStream pStrmFile); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] void GetGalaxyFileFromRepository([In][MarshalAs(UnmanagedType.LPWStr)] string szFullFilename, [MarshalAs(UnmanagedType.Interface)] out IStream ppStrmFile); }