49 lines
1.6 KiB
C#
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();
|
|
}
|
|
} |