[BROWSEUI][INCLUDE] Localize 'Address' on CBandSiteMenu (#4767)

- Add IDS_ADDRESSMENUTEXT resource string (whose ID matchs the string of addressband.rgs).
- Add SHLoadRegUIStringA/W function prototype to <shlwapi_undoc.h>.
- Use SHLoadRegUIStringW to load MenuTextPUI.
CORE-18394
This commit is contained in:
Katayama Hirofumi MZ 2022-10-11 06:15:28 +09:00 committed by GitHub
parent bb43363416
commit 2e67c18d2b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
26 changed files with 46 additions and 4 deletions

View file

@ -298,6 +298,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "&Дневник\tCtrl+H"
END

View file

@ -316,6 +316,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "&Verlauf\tCtrl+H"
END

View file

@ -316,6 +316,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "&History\tCtrl+H"
END

View file

@ -307,6 +307,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "&Historial\tCtrl+H"
END

View file

@ -305,6 +305,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "&Ajalugu\tCtrl+H"
END

View file

@ -305,6 +305,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "&Historial\tCtrl+H"
END

View file

@ -316,6 +316,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "&Historique\tCtrl+H"
END

View file

@ -300,6 +300,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "היסטוריה\tCtrl+H"
END

View file

@ -298,6 +298,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "&हिस्टरी\tCtrl+H"
END

View file

@ -316,6 +316,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "&Előzmények\tCtrl+H"
END

View file

@ -317,6 +317,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "&Riwayat\tCtrl+H"
END

View file

@ -298,6 +298,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "&Recenti\tCtrl+H"
END

View file

@ -316,6 +316,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "アドレス(&A)"
IDS_HISTORYTEXT "履歴(&H)\tCtrl+H"
END

View file

@ -307,6 +307,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "&Historia\tCtrl+H"
END

View file

@ -300,6 +300,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "&Histórico\tCtrl+H"
END

View file

@ -300,6 +300,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "&Histórico\tCtrl+H"
END

View file

@ -300,6 +300,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "Ist&oric\tCtrl+H"
END

View file

@ -307,6 +307,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "&История\tCtrl+H"
END

View file

@ -317,6 +317,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "&Histori\tCtrl+H"
END

View file

@ -300,6 +300,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "&Geçmiş\tCtrl+H"
END

View file

@ -306,6 +306,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "&Історія\tCtrl+H"
END

View file

@ -320,6 +320,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "历史(&H)\tCtrl+H"
END

View file

@ -322,6 +322,7 @@ END
STRINGTABLE
BEGIN
IDS_ADDRESSMENUTEXT "&Address"
IDS_HISTORYTEXT "歷程記錄(&H)\tCtrl+H"
END

View file

@ -125,6 +125,7 @@
#define IDS_STANDARD_TOOLBAR 12624
#define IDS_ADDRESSBANDLABEL 12902
#define IDS_FOLDERSLABEL 12919
#define IDS_ADDRESSMENUTEXT 13137
#define IDS_HISTORYTEXT 13169
#define IDS_UP 58434
#define IDS_BACK 58689

View file

@ -22,6 +22,7 @@
#include "shellbars.h"
#include <browseui_undoc.h>
#include <shlwapi_undoc.h>
/* The menu consists of 3 parts. The first is loaded from the resources,
the second is populated with the classes of the CATID_DeskBand comcat
@ -58,10 +59,9 @@ HRESULT CBandSiteMenu::_CreateMenuPart()
WCHAR wszBandGUID[MAX_PATH];
WCHAR wRegKey[MAX_PATH];
UINT cBands;
DWORD dwDataSize;
CATID category = CATID_DeskBand;
HMENU hmenuToolbars;
DWORD dwRead;
DWORD dwRead, dwDataSize;
CComPtr<IEnumGUID> pEnumGUID;
HRESULT hr;
@ -97,8 +97,22 @@ HRESULT CBandSiteMenu::_CreateMenuPart()
/* Get the band name */
StringCchPrintfW(wRegKey, MAX_PATH, L"CLSID\\%s", wszBandGUID);
dwDataSize = MAX_PATH;
SHGetValue(HKEY_CLASSES_ROOT, wRegKey, NULL, NULL, wszBandName, &dwDataSize);
HKEY hKey;
if (RegOpenKeyExW(HKEY_CLASSES_ROOT, wRegKey, 0, KEY_READ, &hKey) == ERROR_SUCCESS)
{
hr = SHLoadRegUIStringW(hKey, L"MenuTextPUI", wszBandName, _countof(wszBandName));
if (FAILED_UNEXPECTEDLY(hr))
{
hr = SHLoadRegUIStringW(hKey, NULL, wszBandName, _countof(wszBandName));
FAILED_UNEXPECTEDLY(hr);
}
RegCloseKey(hKey);
}
else
{
dwDataSize = sizeof(wszBandName);
SHGetValueW(HKEY_CLASSES_ROOT, wRegKey, NULL, NULL, wszBandName, &dwDataSize);
}
/* Insert it */
InsertMenu(hmenuToolbars, cBands, MF_BYPOSITION, m_ComCatGuids.GetSize() + FIRST_COMCAT_MENU_ID, wszBandName);

View file

@ -134,10 +134,14 @@ DWORD WINAPI SHGetValueGoodBootA(HKEY hkey, LPCSTR pSubKey, LPCSTR pValue,
LPDWORD pwType, LPVOID pvData, LPDWORD pbData);
DWORD WINAPI SHGetValueGoodBootW(HKEY hkey, LPCWSTR pSubKey, LPCWSTR pValue,
LPDWORD pwType, LPVOID pvData, LPDWORD pbData);
HRESULT WINAPI SHLoadRegUIStringA(HKEY hkey, LPCSTR value, LPSTR buf, DWORD size);
HRESULT WINAPI SHLoadRegUIStringW(HKEY hkey, LPCWSTR value, LPWSTR buf, DWORD size);
#ifdef UNICODE
#define SHGetValueGoodBoot SHGetValueGoodBootW
#define SHLoadRegUIString SHLoadRegUIStringW
#else
#define SHGetValueGoodBoot SHGetValueGoodBootA
#define SHLoadRegUIString SHLoadRegUIStringA
#endif
int