using System;
using System.Runtime.InteropServices;
using static Vanara.PInvoke.PropSys;
namespace Vanara.PInvoke
{
public static partial class Shell32
{
///
/// Exposes a method that initializes a handler, such as a property handler, thumbnail handler, or preview handler, with a property store.
///
///
/// When to Implement
/// Use this interface when initializing a handler for OpenSearch result sets, which are returned as RSS or Atom feeds.
///
// https://docs.microsoft.com/en-us/windows/win32/api/shobjidl_core/nn-shobjidl_core-iinitializewithpropertystore
[PInvokeData("shobjidl_core.h", MSDNShortId = "NN:shobjidl_core.IInitializeWithPropertyStore")]
[ComImport, Guid("C3E12EB5-7D8D-44f8-B6DD-0E77B34D6DE4"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
public interface IInitializeWithPropertyStore
{
/// Initializes a handler with an IPropertyStore.
///
/// Type: IPropertyStore*
/// A pointer to an IPropertyStore.
///
///
/// Type: HRESULT
/// If this method succeeds, it returns S_OK. Otherwise, it returns an HRESULT error code.
///
///
/// This method supports initializing handlers for use with OpenSearch result sets, which are returned from web services as RSS
/// or Atom feeds.
///
// https://docs.microsoft.com/en-us/windows/win32/api/shobjidl_core/nf-shobjidl_core-iinitializewithpropertystore-initialize
// HRESULT Initialize( IPropertyStore *pps );
[PreserveSig]
HRESULT Initialize([In] IPropertyStore pps);
}
}
}