using System.Runtime.CompilerServices; using System.Runtime.InteropServices; namespace Interop.Lmx; [ComImport] [ClassInterface(ClassInterfaceType.None)] [TypeLibType(TypeLibTypeFlags.FCanCreate)] [Guid("45073153-4A92-11D3-87EC-00A0C982C01C")] public class PlatformRegistryAccessObjectClass : IPlatformRegistryAccess, PlatformRegistryAccessObject { [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] public virtual extern void GetDirectoryRootpath([MarshalAs(UnmanagedType.BStr)] out string pbstrPath); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] public virtual extern void GetRootKey([MarshalAs(UnmanagedType.BStr)] out string pbstrRootpath); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] public virtual extern void GetObjectRuntimeFilepath([In][MarshalAs(UnmanagedType.LPWStr)] string szObjectName, [In] int index, [MarshalAs(UnmanagedType.BStr)] out string pbstrPathname); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] public virtual extern void SetObjectRuntimeFilepath([In][MarshalAs(UnmanagedType.LPWStr)] string szObjectName, [In] int index, [In][MarshalAs(UnmanagedType.LPWStr)] string szPathname); }