diff --git a/dll/win32/browseui/lang/bg-BG.rc b/dll/win32/browseui/lang/bg-BG.rc index c76e5d32821d9..3c926e1d7074f 100644 --- a/dll/win32/browseui/lang/bg-BG.rc +++ b/dll/win32/browseui/lang/bg-BG.rc @@ -295,4 +295,6 @@ END STRINGTABLE BEGIN IDS_BROWSEFORNEWTOOLAR "Choose a folder" + IDS_TOOLBAR_ERR_TITLE "Toolbar" + IDS_TOOLBAR_ERR_TEXT "Cannot create toolbar." END diff --git a/dll/win32/browseui/lang/de-DE.rc b/dll/win32/browseui/lang/de-DE.rc index d54f315047a52..ae7f85d5184f3 100644 --- a/dll/win32/browseui/lang/de-DE.rc +++ b/dll/win32/browseui/lang/de-DE.rc @@ -314,4 +314,6 @@ END STRINGTABLE BEGIN IDS_BROWSEFORNEWTOOLAR "Choose a folder" + IDS_TOOLBAR_ERR_TITLE "Toolbar" + IDS_TOOLBAR_ERR_TEXT "Cannot create toolbar." END diff --git a/dll/win32/browseui/lang/en-US.rc b/dll/win32/browseui/lang/en-US.rc index 98d6277a43b62..be6f51ae8c4f1 100644 --- a/dll/win32/browseui/lang/en-US.rc +++ b/dll/win32/browseui/lang/en-US.rc @@ -313,4 +313,6 @@ END STRINGTABLE BEGIN IDS_BROWSEFORNEWTOOLAR "Choose a folder" + IDS_TOOLBAR_ERR_TITLE "Toolbar" + IDS_TOOLBAR_ERR_TEXT "Cannot create toolbar." END diff --git a/dll/win32/browseui/lang/es-ES.rc b/dll/win32/browseui/lang/es-ES.rc index 3506c67d5f355..7003b588e6a7a 100644 --- a/dll/win32/browseui/lang/es-ES.rc +++ b/dll/win32/browseui/lang/es-ES.rc @@ -297,4 +297,6 @@ END STRINGTABLE BEGIN IDS_BROWSEFORNEWTOOLAR "Choose a folder" + IDS_TOOLBAR_ERR_TITLE "Toolbar" + IDS_TOOLBAR_ERR_TEXT "Cannot create toolbar." END diff --git a/dll/win32/browseui/lang/fr-FR.rc b/dll/win32/browseui/lang/fr-FR.rc index 8ceaf484ebd71..da07016e3fb8f 100644 --- a/dll/win32/browseui/lang/fr-FR.rc +++ b/dll/win32/browseui/lang/fr-FR.rc @@ -313,4 +313,6 @@ END STRINGTABLE BEGIN IDS_BROWSEFORNEWTOOLAR "Choose a folder" + IDS_TOOLBAR_ERR_TITLE "Toolbar" + IDS_TOOLBAR_ERR_TEXT "Cannot create toolbar." END diff --git a/dll/win32/browseui/lang/he-IL.rc b/dll/win32/browseui/lang/he-IL.rc index d324f74b161f9..dfb3dd7100127 100644 --- a/dll/win32/browseui/lang/he-IL.rc +++ b/dll/win32/browseui/lang/he-IL.rc @@ -297,4 +297,6 @@ END STRINGTABLE BEGIN IDS_BROWSEFORNEWTOOLAR "Choose a folder" + IDS_TOOLBAR_ERR_TITLE "Toolbar" + IDS_TOOLBAR_ERR_TEXT "Cannot create toolbar." END diff --git a/dll/win32/browseui/lang/it-IT.rc b/dll/win32/browseui/lang/it-IT.rc index f780f846fddde..7fa4e6f7a0df2 100644 --- a/dll/win32/browseui/lang/it-IT.rc +++ b/dll/win32/browseui/lang/it-IT.rc @@ -295,4 +295,6 @@ END STRINGTABLE BEGIN IDS_BROWSEFORNEWTOOLAR "Choose a folder" + IDS_TOOLBAR_ERR_TITLE "Toolbar" + IDS_TOOLBAR_ERR_TEXT "Cannot create toolbar." END diff --git a/dll/win32/browseui/lang/ja-JP.rc b/dll/win32/browseui/lang/ja-JP.rc index 65e900356407c..def88114c60a4 100644 --- a/dll/win32/browseui/lang/ja-JP.rc +++ b/dll/win32/browseui/lang/ja-JP.rc @@ -313,4 +313,6 @@ END STRINGTABLE BEGIN IDS_BROWSEFORNEWTOOLAR "Choose a folder" + IDS_TOOLBAR_ERR_TITLE "Toolbar" + IDS_TOOLBAR_ERR_TEXT "Cannot create toolbar." END diff --git a/dll/win32/browseui/lang/pl-PL.rc b/dll/win32/browseui/lang/pl-PL.rc index 3e5f74be0db40..8d5f6a6f5d107 100644 --- a/dll/win32/browseui/lang/pl-PL.rc +++ b/dll/win32/browseui/lang/pl-PL.rc @@ -303,4 +303,6 @@ END STRINGTABLE BEGIN IDS_BROWSEFORNEWTOOLAR "Choose a folder" + IDS_TOOLBAR_ERR_TITLE "Toolbar" + IDS_TOOLBAR_ERR_TEXT "Cannot create toolbar." END diff --git a/dll/win32/browseui/lang/pt-BR.rc b/dll/win32/browseui/lang/pt-BR.rc index 7fcd59962e7b6..2915c1e8cff0d 100644 --- a/dll/win32/browseui/lang/pt-BR.rc +++ b/dll/win32/browseui/lang/pt-BR.rc @@ -297,4 +297,6 @@ END STRINGTABLE BEGIN IDS_BROWSEFORNEWTOOLAR "Choose a folder" + IDS_TOOLBAR_ERR_TITLE "Toolbar" + IDS_TOOLBAR_ERR_TEXT "Cannot create toolbar." END diff --git a/dll/win32/browseui/lang/ro-RO.rc b/dll/win32/browseui/lang/ro-RO.rc index b763155b41ad3..bbe6b7694349f 100644 --- a/dll/win32/browseui/lang/ro-RO.rc +++ b/dll/win32/browseui/lang/ro-RO.rc @@ -297,4 +297,6 @@ END STRINGTABLE BEGIN IDS_BROWSEFORNEWTOOLAR "Choose a folder" + IDS_TOOLBAR_ERR_TITLE "Toolbar" + IDS_TOOLBAR_ERR_TEXT "Cannot create toolbar." END diff --git a/dll/win32/browseui/lang/ru-RU.rc b/dll/win32/browseui/lang/ru-RU.rc index 568cad6e016a9..593d685b83030 100644 --- a/dll/win32/browseui/lang/ru-RU.rc +++ b/dll/win32/browseui/lang/ru-RU.rc @@ -297,4 +297,6 @@ END STRINGTABLE BEGIN IDS_BROWSEFORNEWTOOLAR "Choose a folder" + IDS_TOOLBAR_ERR_TITLE "Toolbar" + IDS_TOOLBAR_ERR_TEXT "Cannot create toolbar." END diff --git a/dll/win32/browseui/lang/sq-AL.rc b/dll/win32/browseui/lang/sq-AL.rc index 9296f7ee928c1..31d615019a4ac 100644 --- a/dll/win32/browseui/lang/sq-AL.rc +++ b/dll/win32/browseui/lang/sq-AL.rc @@ -314,4 +314,6 @@ END STRINGTABLE BEGIN IDS_BROWSEFORNEWTOOLAR "Choose a folder" + IDS_TOOLBAR_ERR_TITLE "Toolbar" + IDS_TOOLBAR_ERR_TEXT "Cannot create toolbar." END diff --git a/dll/win32/browseui/lang/tr-TR.rc b/dll/win32/browseui/lang/tr-TR.rc index f04cba1ddde72..86e6ed6d6a7a6 100644 --- a/dll/win32/browseui/lang/tr-TR.rc +++ b/dll/win32/browseui/lang/tr-TR.rc @@ -297,4 +297,6 @@ END STRINGTABLE BEGIN IDS_BROWSEFORNEWTOOLAR "Choose a folder" + IDS_TOOLBAR_ERR_TITLE "Toolbar" + IDS_TOOLBAR_ERR_TEXT "Cannot create toolbar." END diff --git a/dll/win32/browseui/lang/uk-UA.rc b/dll/win32/browseui/lang/uk-UA.rc index 80e832bf829fd..0cebd383762f9 100644 --- a/dll/win32/browseui/lang/uk-UA.rc +++ b/dll/win32/browseui/lang/uk-UA.rc @@ -297,4 +297,6 @@ END STRINGTABLE BEGIN IDS_BROWSEFORNEWTOOLAR "Choose a folder" + IDS_TOOLBAR_ERR_TITLE "Toolbar" + IDS_TOOLBAR_ERR_TEXT "Cannot create toolbar." END diff --git a/dll/win32/browseui/lang/zh-CN.rc b/dll/win32/browseui/lang/zh-CN.rc index 5e7e970990223..ca887e9670aae 100644 --- a/dll/win32/browseui/lang/zh-CN.rc +++ b/dll/win32/browseui/lang/zh-CN.rc @@ -315,4 +315,6 @@ END STRINGTABLE BEGIN IDS_BROWSEFORNEWTOOLAR "Choose a folder" + IDS_TOOLBAR_ERR_TITLE "Toolbar" + IDS_TOOLBAR_ERR_TEXT "Cannot create toolbar." END diff --git a/dll/win32/browseui/lang/zh-TW.rc b/dll/win32/browseui/lang/zh-TW.rc index c53ee3c1dda0c..3889152c0c5ca 100644 --- a/dll/win32/browseui/lang/zh-TW.rc +++ b/dll/win32/browseui/lang/zh-TW.rc @@ -315,4 +315,6 @@ END STRINGTABLE BEGIN IDS_BROWSEFORNEWTOOLAR "Choose a folder" + IDS_TOOLBAR_ERR_TITLE "Toolbar" + IDS_TOOLBAR_ERR_TEXT "Cannot create toolbar." END diff --git a/dll/win32/browseui/resource.h b/dll/win32/browseui/resource.h index 0d376dac9d83c..fbad0083f7a49 100644 --- a/dll/win32/browseui/resource.h +++ b/dll/win32/browseui/resource.h @@ -109,6 +109,8 @@ #define IDS_NOTEXTLABELS 12304 #define IDS_SELECTIVETEXTONRIGHT 12305 #define IDS_BROWSEFORNEWTOOLAR 12387 +#define IDS_TOOLBAR_ERR_TITLE 12388 +#define IDS_TOOLBAR_ERR_TEXT 12389 #define IDS_GOBUTTONLABEL 12656 #define IDS_GOBUTTONTIPTEMPLATE 12657 #define IDS_SEARCHLABEL 12897 diff --git a/dll/win32/browseui/shellbars/CBandSiteMenu.cpp b/dll/win32/browseui/shellbars/CBandSiteMenu.cpp index 0c56af463c3a6..d94038987f8e7 100644 --- a/dll/win32/browseui/shellbars/CBandSiteMenu.cpp +++ b/dll/win32/browseui/shellbars/CBandSiteMenu.cpp @@ -386,6 +386,21 @@ HRESULT STDMETHODCALLTYPE CBandSiteMenu::QueryContextMenu( return MAKE_HRESULT(SEVERITY_SUCCESS, 0, USHORT(idMax - idCmdFirst +1)); } +HRESULT CBandSiteMenu::_ShowToolbarError(HRESULT hRet) +{ + WCHAR szText[260]; + WCHAR szTitle[256]; + + if (!LoadStringW(GetModuleHandleW(L"browseui.dll"), IDS_TOOLBAR_ERR_TEXT, szText, _countof(szText))) + StringCchCopyW(szText, _countof(szText), L"Cannot create toolbar."); + + if (!LoadStringW(GetModuleHandleW(L"browseui.dll"), IDS_TOOLBAR_ERR_TITLE, szTitle, _countof(szTitle))) + StringCchCopyW(szTitle, _countof(szTitle), L"Toolbar"); + + MessageBoxW(NULL, szText, szTitle, MB_OK | MB_ICONSTOP | MB_SETFOREGROUND); + return hRet; +} + HRESULT STDMETHODCALLTYPE CBandSiteMenu::InvokeCommand(LPCMINVOKECOMMANDINFO lpici) { HRESULT hRet; @@ -429,11 +444,11 @@ HRESULT STDMETHODCALLTYPE CBandSiteMenu::InvokeCommand(LPCMINVOKECOMMANDINFO lpi CComPtr pDeskBand; hRet = _CreateBuiltInISFBand(uID, IID_PPV_ARG(IDeskBand, &pDeskBand)); if (FAILED_UNEXPECTEDLY(hRet)) - return hRet; + return _ShowToolbarError(hRet); hRet = m_BandSite->AddBand(pDeskBand); if (FAILED_UNEXPECTEDLY(hRet)) - return hRet; + return _ShowToolbarError(hRet); } return S_OK; } diff --git a/dll/win32/browseui/shellbars/CBandSiteMenu.h b/dll/win32/browseui/shellbars/CBandSiteMenu.h index 4e56fa998ff5c..89d4e537fdb62 100644 --- a/dll/win32/browseui/shellbars/CBandSiteMenu.h +++ b/dll/win32/browseui/shellbars/CBandSiteMenu.h @@ -43,6 +43,7 @@ class CBandSiteMenu : UINT _GetMenuIdFromBand(CLSID *BandCLSID); UINT _GetBandIdFromClsid(CLSID* pclsid); UINT _GetBandIdForBuiltinISFBand(UINT uID); + HRESULT _ShowToolbarError(HRESULT hRet); public: CBandSiteMenu();