Commit 02dd8c36 authored by Martin Fuchs's avatar Martin Fuchs Committed by Alexandre Julliard

Call IShellExecuteHook interface for ShellExecute() calls with ID

lists.
parent a1fe8b4f
...@@ -864,8 +864,22 @@ BOOL WINAPI ShellExecuteExW32 (LPSHELLEXECUTEINFOW sei, SHELL_ExecuteW32 execfun ...@@ -864,8 +864,22 @@ BOOL WINAPI ShellExecuteExW32 (LPSHELLEXECUTEINFOW sei, SHELL_ExecuteW32 execfun
} }
/* process the IDList */ /* process the IDList */
if ((sei_tmp.fMask & SEE_MASK_INVOKEIDLIST) == SEE_MASK_INVOKEIDLIST) /*0x0c*/ if (sei_tmp.fMask & SEE_MASK_IDLIST)
{ {
IShellExecuteHookW* pSEH;
HRESULT hr = SHBindToParent(sei_tmp.lpIDList, &IID_IShellExecuteHookW, (LPVOID*)&pSEH, NULL);
if (SUCCEEDED(hr))
{
hr = IShellExecuteHookW_Execute(pSEH, sei);
IShellExecuteHookW_Release(pSEH);
if (hr == S_OK)
return TRUE;
}
wszApplicationName[0] = '"'; wszApplicationName[0] = '"';
SHGetPathFromIDListW(sei_tmp.lpIDList, wszApplicationName+1); SHGetPathFromIDListW(sei_tmp.lpIDList, wszApplicationName+1);
strcatW(wszApplicationName, wQuote); strcatW(wszApplicationName, wQuote);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment