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

31 lines
1.0 KiB
C#

using System;
using System.Runtime.InteropServices;
namespace VisualStudioMock
{
/// <summary>
/// Provides named properties.
/// </summary>
/// <remarks>
/// You can get this from an <see cref="ISetupInstance" />, <see cref="ISetupPackageReference" />, or derivative.
/// </remarks>
[ComImport]
[Guid("c601c175-a3be-44bc-91f6-4568d230fc83")]
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
public interface ISetupPropertyStore
{
/// <summary>
/// Gets an array of property names in this property store.
/// </summary>
/// <returns>An array of property names in this property store.</returns>
[return: MarshalAs(UnmanagedType.SafeArray, SafeArraySubType = VarEnum.VT_BSTR)]
string[] GetNames();
/// <summary>
/// Gets the value of a named property in this property store.
/// </summary>
/// <param name="pwszName">The name of the property to get.</param>
/// <returns>The value of the property.</returns>
object GetValue([In] [MarshalAs(UnmanagedType.LPWStr)] string pwszName);
}
}