31 lines
1.0 KiB
C#
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);
|
|
}
|
|
} |