diff --git a/dll/win32/shell32/CCopyToMenu.cpp b/dll/win32/shell32/CCopyToMenu.cpp index a692d7fed53..d3da9d1f5a8 100644 --- a/dll/win32/shell32/CCopyToMenu.cpp +++ b/dll/win32/shell32/CCopyToMenu.cpp @@ -319,7 +319,7 @@ CCopyToMenu::InvokeCommand(LPCMINVOKECOMMANDINFO lpici) HRESULT hr = E_FAIL; TRACE("CCopyToMenu::InvokeCommand(%p)\n", lpici); - if (HIWORD(lpici->lpVerb) == 0) + if (IS_INTRESOURCE(lpici->lpVerb)) { if (m_idCmdFirst + LOWORD(lpici->lpVerb) == m_idCmdCopyTo) { diff --git a/dll/win32/shell32/CDefView.cpp b/dll/win32/shell32/CDefView.cpp index 9f12fd09549..876748cd13e 100644 --- a/dll/win32/shell32/CDefView.cpp +++ b/dll/win32/shell32/CDefView.cpp @@ -1522,6 +1522,9 @@ HRESULT CDefView::InvokeContextMenuCommand(CComPtr &pCM, UINT uCom cmi.lpVerb = MAKEINTRESOURCEA(uCommand); cmi.hwnd = m_hWnd; + if (uCommand==FCIDM_SHVIEW_COPYTO) cmi.lpVerb = "copyto"; + if (uCommand==FCIDM_SHVIEW_MOVETO) cmi.lpVerb = "moveto"; + if (GetKeyState(VK_SHIFT) & 0x8000) cmi.fMask |= CMIC_MASK_SHIFT_DOWN; diff --git a/dll/win32/shell32/CMoveToMenu.cpp b/dll/win32/shell32/CMoveToMenu.cpp index 5087f5ec37d..a2d35f1ade1 100644 --- a/dll/win32/shell32/CMoveToMenu.cpp +++ b/dll/win32/shell32/CMoveToMenu.cpp @@ -323,7 +323,7 @@ CMoveToMenu::InvokeCommand(LPCMINVOKECOMMANDINFO lpici) HRESULT hr = E_FAIL; TRACE("CMoveToMenu::InvokeCommand(%p)\n", lpici); - if (HIWORD(lpici->lpVerb) == 0) + if (IS_INTRESOURCE(lpici->lpVerb)) { if (m_idCmdFirst + LOWORD(lpici->lpVerb) == m_idCmdMoveTo) {