Files
docker-wine-dotnet/VisualStudioMock/ISetupConfiguration2.cs
2025-02-04 00:55:10 +01:00

49 lines
1.6 KiB
C#

using System;
using System.Runtime.InteropServices;
namespace VisualStudioMock
{
/// <summary>
/// Gets information about product instances set up on the machine.
/// </summary>
[ComImport]
[Guid("26AAB78C-4A60-49D6-AF3B-3C35BC93365D")]
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
public interface ISetupConfiguration2 : ISetupConfiguration
{
/// <summary>
/// Enumerates all launchable product instances installed.
/// </summary>
/// <returns>An enumeration of installed product instances.</returns>
[return: MarshalAs(UnmanagedType.Interface)]
new IEnumSetupInstances EnumInstances();
/// <summary>
/// Gets the instance for the current process path.
/// </summary>
/// <returns>The instance for the current process path.</returns>
/// <remarks>
/// The returned instance may not be launchable.
/// </remarks>
[return: MarshalAs(UnmanagedType.Interface)]
new ISetupInstance GetInstanceForCurrentProcess();
/// <summary>
/// Gets the instance for the given path.
/// </summary>
/// <param name="path">Path used to determine instance</param>
/// <returns>The instance for the given path.</returns>
/// <remarks>
/// The returned instance may not be launchable.
/// </remarks>
[return: MarshalAs(UnmanagedType.Interface)]
new ISetupInstance GetInstanceForPath([In] [MarshalAs(UnmanagedType.LPWStr)] string path);
/// <summary>
/// Enumerates all product instances.
/// </summary>
/// <returns>An enumeration of all product instances.</returns>
[return: MarshalAs(UnmanagedType.Interface)]
IEnumSetupInstances EnumAllInstances();
}
}