[SHELL32] Implement DelegateExecute verb handler and basic IShellItemArray (#6972)

This commit is contained in:
Whindmar Saksit 2024-06-04 15:38:49 +02:00 committed by GitHub
parent 01fbf25dab
commit 0d10fb814f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 265 additions and 84 deletions

View file

@ -2316,7 +2316,7 @@ interface IInitializeCommand : IUnknown
{
HRESULT Initialize(
[in, string] LPCWSTR pszCommandName,
[in] IPropertyBag *ppb);
[in, optional] IPropertyBag *ppb);
}
@ -2371,6 +2371,39 @@ interface IExplorerCommandProvider : IUnknown
};
/*****************************************************************************
* IExecuteCommand interface (7+)
*/
[
uuid(7F9185B0-CB92-43C5-80A9-92277A4F7B54),
pointer_default(unique)
]
interface IExecuteCommand : IUnknown
{
HRESULT SetKeyState([in] DWORD grfKeyState);
HRESULT SetParameters([in, string] LPCWSTR pszParameters);
HRESULT SetPosition([in] POINT pt);
HRESULT SetShowWindow([in] int nShow);
HRESULT SetNoShowUI([in] BOOL fNoShowUI);
HRESULT SetDirectory([in, string] LPCWSTR pszDirectory);
HRESULT Execute();
};
/*****************************************************************************
* IObjectWithSelection interface (Vista+)
*/
[
uuid(1C9CD5BB-98E9-4491-A60F-31AACC72B83C),
pointer_default(unique)
]
interface IObjectWithSelection : IUnknown
{
HRESULT SetSelection([in] IShellItemArray *psia);
HRESULT GetSelection([in] REFIID riid, [out, iid_is(riid)] void **ppv);
};
/*****************************************************************************
* IOpenControlPanel interface (Vista+)
*/