diff --git a/reactos/base/applications/mscutils/eventvwr/eventvwr.c b/reactos/base/applications/mscutils/eventvwr/eventvwr.c index 86b7666aa8d..e44b35357c2 100644 --- a/reactos/base/applications/mscutils/eventvwr/eventvwr.c +++ b/reactos/base/applications/mscutils/eventvwr/eventvwr.c @@ -41,12 +41,10 @@ #define _CRT_SECURE_NO_DEPRECATE /* all deprecated unsafe string functions */ #endif -static const LPWSTR EVENT_SOURCE_APPLICATION = L"Application"; -static const LPWSTR EVENT_SOURCE_SECURITY = L"Security"; -static const LPWSTR EVENT_SOURCE_SYSTEM = L"System"; static const WCHAR szWindowClass[] = L"EVENTVWR"; /* the main window class name*/ +static const WCHAR EVENTLOG_BASE_KEY[] = L"SYSTEM\\CurrentControlSet\\Services\\EventLog\\"; -//MessageFile message buffer size +// MessageFile message buffer size #define EVENT_MESSAGE_EVENTTEXT_BUFFER 1024*10 #define EVENT_MESSAGE_FILE_BUFFER 1024*10 #define EVENT_DLL_SEPARATOR L";" @@ -73,6 +71,9 @@ OPENFILENAMEW sfn; LPWSTR lpSourceLogName = NULL; LPWSTR lpComputerName = NULL; +DWORD dwNumLogs = 0; +WCHAR **LogNames; + /* Forward declarations of functions included in this code module: */ ATOM MyRegisterClass(HINSTANCE hInstance); BOOL InitInstance(HINSTANCE, int); @@ -838,19 +839,6 @@ Refresh(VOID) } -// -// FUNCTION: MyRegisterClass() -// -// PURPOSE: Registers the window class. -// -// COMMENTS: -// -// This function and its usage are only necessary if you want this code -// to be compatible with Win32 systems prior to the 'RegisterClassEx' -// function that was added to Windows 95. It is important to call this function -// so that the application will get 'well formed' small icons associated -// with it. -// ATOM MyRegisterClass(HINSTANCE hInstance) { @@ -874,16 +862,188 @@ MyRegisterClass(HINSTANCE hInstance) } -// -// FUNCTION: InitInstance(HINSTANCE, int) -// -// PURPOSE: Saves instance handle and creates main window -// -// COMMENTS: -// -// In this function, we save the instance handle in a global variable and -// create and display the main program window. -// +VOID +GetDisplayNameFile(LPCWSTR lpLogName, LPWSTR lpModuleName) +{ + HKEY hKey; + WCHAR *KeyPath; + WCHAR szModuleName[MAX_PATH]; + DWORD dwData; + + + KeyPath = (WCHAR*)HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, (wcslen(EVENTLOG_BASE_KEY) + wcslen(lpLogName) + 1) * sizeof(WCHAR)); + if (!KeyPath) + { + return; + } + + wcscpy(KeyPath, EVENTLOG_BASE_KEY); + wcscat(KeyPath, lpLogName); + + if (RegOpenKeyExW(HKEY_LOCAL_MACHINE, KeyPath, 0, KEY_READ, &hKey) != ERROR_SUCCESS) + { + HeapFree(GetProcessHeap(), 0, KeyPath); + return; + } + + dwData = MAX_PATH; + + if (RegQueryValueExW(hKey, L"DisplayNameFile", NULL, NULL, (LPBYTE)szModuleName, &dwData) == ERROR_SUCCESS) + { + ExpandEnvironmentStringsW(szModuleName, lpModuleName, MAX_PATH); + } + + RegCloseKey(hKey); + HeapFree(GetProcessHeap(), 0, KeyPath); +} + + +DWORD +GetDisplayNameID(LPCWSTR lpLogName) +{ + HKEY hKey; + WCHAR *KeyPath; + DWORD dwMessageID = 0; + DWORD dwData; + + KeyPath = (WCHAR*)HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, (wcslen(EVENTLOG_BASE_KEY) + wcslen(lpLogName) + 1) * sizeof(WCHAR)); + if (!KeyPath) + { + return 0; + } + + wcscpy(KeyPath, EVENTLOG_BASE_KEY); + wcscat(KeyPath, lpLogName); + + if (RegOpenKeyExW(HKEY_LOCAL_MACHINE, KeyPath, 0, KEY_READ, &hKey) != ERROR_SUCCESS) + { + HeapFree(GetProcessHeap(), 0, KeyPath); + return 0; + } + + dwData = sizeof(dwMessageID); + + RegQueryValueExW(hKey, L"DisplayNameID", NULL, NULL, (LPBYTE)&dwMessageID, &dwData); + + RegCloseKey(hKey); + HeapFree(GetProcessHeap(), 0, KeyPath); + + return dwMessageID; +} + + +VOID +BuildLogList(void) +{ + HKEY hKey; + DWORD lpcName; + DWORD dwIndex; + DWORD dwMessageID; + DWORD dwMaxKeyLength; + WCHAR szModuleName[MAX_PATH]; + LPWSTR lpDisplayName; + HANDLE hLibrary = NULL; + + if (RegOpenKeyExW(HKEY_LOCAL_MACHINE, EVENTLOG_BASE_KEY, 0, KEY_READ, &hKey) != ERROR_SUCCESS) + { + return; + } + + if (RegQueryInfoKeyW(hKey, NULL, NULL, NULL, &dwNumLogs, &dwMaxKeyLength, NULL, NULL, NULL, NULL, NULL, NULL) != ERROR_SUCCESS) + { + RegCloseKey(hKey); + return; + } + + if (!dwNumLogs) + { + RegCloseKey(hKey); + return; + } + + LogNames = (WCHAR**)HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, (dwNumLogs + 1) * sizeof(WCHAR*)); + + if (!LogNames) + { + RegCloseKey(hKey); + return; + } + + for (dwIndex = 0; dwIndex < dwNumLogs; dwIndex++) + { + LogNames[dwIndex] = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, ((dwMaxKeyLength + 1) * sizeof(WCHAR))); + + if (LogNames[dwIndex] != NULL) + { + lpcName = dwMaxKeyLength + 1; + + if (RegEnumKeyExW(hKey, dwIndex, LogNames[dwIndex], &lpcName, NULL, NULL, NULL, NULL) == ERROR_SUCCESS) + { + lpDisplayName = NULL; + + ZeroMemory(szModuleName, sizeof(szModuleName)); + GetDisplayNameFile(LogNames[dwIndex], szModuleName); + dwMessageID = GetDisplayNameID(LogNames[dwIndex]); + + hLibrary = LoadLibraryExW(szModuleName, NULL, DONT_RESOLVE_DLL_REFERENCES | LOAD_LIBRARY_AS_DATAFILE); + if (hLibrary != NULL) + { + FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_HMODULE, hLibrary, dwMessageID, 0, (LPWSTR)&lpDisplayName, 0, NULL); + FreeLibrary(hLibrary); + } + + if (lpDisplayName) + { + InsertMenuW(hMainMenu, ID_SAVE_PROTOCOL, MF_BYCOMMAND | MF_STRING, ID_FIRST_LOG + dwIndex, lpDisplayName); + } + else + { + InsertMenuW(hMainMenu, ID_SAVE_PROTOCOL, MF_BYCOMMAND | MF_STRING, ID_FIRST_LOG + dwIndex, LogNames[dwIndex]); + } + + LocalFree(lpDisplayName); + } + } + } + + InsertMenuW(hMainMenu, ID_SAVE_PROTOCOL, MF_BYCOMMAND | MF_SEPARATOR, ID_FIRST_LOG + dwIndex + 1, NULL); + + RegCloseKey(hKey); + + return; +} + + +VOID +FreeLogList(void) +{ + DWORD dwIndex; + + if (!LogNames) + { + return; + } + + for (dwIndex = 0; dwIndex < dwNumLogs; dwIndex++) + { + if (LogNames[dwIndex]) + { + HeapFree(GetProcessHeap(), 0, LogNames[dwIndex]); + } + + DeleteMenu(hMainMenu, ID_FIRST_LOG + dwIndex, MF_BYCOMMAND); + } + + DeleteMenu(hMainMenu, ID_FIRST_LOG + dwIndex + 1, MF_BYCOMMAND); + + HeapFree(GetProcessHeap(), 0, LogNames); + + dwNumLogs = 0; + + return; +} + + BOOL InitInstance(HINSTANCE hInstance, int nCmdShow) @@ -1042,23 +1202,16 @@ InitInstance(HINSTANCE hInstance, ShowWindow(hwndMainWindow, nCmdShow); UpdateWindow(hwndMainWindow); - QueryEventMessages(lpComputerName, // Use the local computer. - EVENT_SOURCE_APPLICATION); // The event log category + BuildLogList(); + + QueryEventMessages(lpComputerName, LogNames[0]); + + CheckMenuRadioItem(GetMenu(hwndMainWindow), ID_FIRST_LOG, ID_FIRST_LOG + dwNumLogs, ID_FIRST_LOG, MF_BYCOMMAND); return TRUE; } -// -// FUNCTION: WndProc(HWND, UINT, WPARAM, LPARAM) -// -// PURPOSE: Processes messages for the main window. -// -// WM_COMMAND - process the application menu -// WM_PAINT - Paint the main window -// WM_DESTROY - post a quit message and return -// -// LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { @@ -1069,11 +1222,6 @@ WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { case WM_CREATE: hMainMenu = GetMenu(hWnd); - CheckMenuRadioItem(GetMenu(hWnd), - ID_LOG_APPLICATION, - ID_LOG_SYSTEM, - ID_LOG_APPLICATION, - MF_BYCOMMAND); break; case WM_NOTIFY: @@ -1099,44 +1247,21 @@ WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) case WM_COMMAND: // Parse the menu selections: + + if ((LOWORD(wParam) >= ID_FIRST_LOG) && (LOWORD(wParam) <= ID_FIRST_LOG + dwNumLogs)) + { + if (LogNames[LOWORD(wParam) - ID_FIRST_LOG]) + { + if (QueryEventMessages(lpComputerName, LogNames[LOWORD(wParam) - ID_FIRST_LOG])) + { + CheckMenuRadioItem(GetMenu(hWnd), ID_FIRST_LOG, ID_FIRST_LOG + dwNumLogs, LOWORD(wParam), MF_BYCOMMAND); + } + } + } + else + switch (LOWORD(wParam)) { - case ID_LOG_APPLICATION: - if (QueryEventMessages(lpComputerName, // Use the local computer. - EVENT_SOURCE_APPLICATION)) // The event log category - { - CheckMenuRadioItem(GetMenu(hWnd), - ID_LOG_APPLICATION, - ID_LOG_SYSTEM, - ID_LOG_APPLICATION, - MF_BYCOMMAND); - } - break; - - case ID_LOG_SECURITY: - if (QueryEventMessages(lpComputerName, // Use the local computer. - EVENT_SOURCE_SECURITY)) // The event log category - { - CheckMenuRadioItem(GetMenu(hWnd), - ID_LOG_APPLICATION, - ID_LOG_SYSTEM, - ID_LOG_SECURITY, - MF_BYCOMMAND); - } - break; - - case ID_LOG_SYSTEM: - if (QueryEventMessages(lpComputerName, // Use the local computer. - EVENT_SOURCE_SYSTEM)) // The event log category - { - CheckMenuRadioItem(GetMenu(hWnd), - ID_LOG_APPLICATION, - ID_LOG_SYSTEM, - ID_LOG_SYSTEM, - MF_BYCOMMAND); - } - break; - case ID_SAVE_PROTOCOL: SaveProtocol(); break; @@ -1191,6 +1316,7 @@ WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) break; case WM_DESTROY: FreeRecords(); + FreeLogList(); PostQuitMessage(0); break; diff --git a/reactos/base/applications/mscutils/eventvwr/lang/bg-BG.rc b/reactos/base/applications/mscutils/eventvwr/lang/bg-BG.rc index 360802294a2..db30ca55b80 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/bg-BG.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/bg-BG.rc @@ -4,10 +4,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "&Дневник" BEGIN - MENUITEM "&Приложение", ID_LOG_APPLICATION - MENUITEM "&Сигурност", ID_LOG_SECURITY - MENUITEM "&Уредба", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Save &Protocol...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "C&lear all Events", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/cs-CZ.rc b/reactos/base/applications/mscutils/eventvwr/lang/cs-CZ.rc index a939a0724e8..ef28104cc03 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/cs-CZ.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/cs-CZ.rc @@ -4,10 +4,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "&Protokol" BEGIN - MENUITEM "&Aplikace", ID_LOG_APPLICATION - MENUITEM "&Zabezpečení", ID_LOG_SECURITY - MENUITEM "&Systém", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Uložit &Protokol...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "&Odstranit události", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/de-DE.rc b/reactos/base/applications/mscutils/eventvwr/lang/de-DE.rc index e9c0234f69d..00b2fdf2510 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/de-DE.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/de-DE.rc @@ -6,10 +6,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "&Protokoll" BEGIN - MENUITEM "&Anwendung", ID_LOG_APPLICATION - MENUITEM "&Sicherheit", ID_LOG_SECURITY - MENUITEM "&System", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Protokoll s&peichern...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "Alle E&reignisse löschen", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/el-GR.rc b/reactos/base/applications/mscutils/eventvwr/lang/el-GR.rc index e4e757bdcb5..c40203aa0b6 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/el-GR.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/el-GR.rc @@ -6,10 +6,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "&Log" BEGIN - MENUITEM "&Εφαρμογή", ID_LOG_APPLICATION - MENUITEM "&Ασφάλεια", ID_LOG_SECURITY - MENUITEM "&Σύστημα", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Save &Protocol...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "C&lear all Events", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/en-US.rc b/reactos/base/applications/mscutils/eventvwr/lang/en-US.rc index a02247904ac..7cda9ee606f 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/en-US.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/en-US.rc @@ -12,10 +12,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "&Log" BEGIN - MENUITEM "&Application", ID_LOG_APPLICATION - MENUITEM "&Security", ID_LOG_SECURITY - MENUITEM "&System", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Save &Protocol...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "C&lear all Events", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/es-ES.rc b/reactos/base/applications/mscutils/eventvwr/lang/es-ES.rc index d7dfb8bde9b..97ce5eb126b 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/es-ES.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/es-ES.rc @@ -6,10 +6,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "&Log" BEGIN - MENUITEM "&Aplicación", ID_LOG_APPLICATION - MENUITEM "&Seguridad", ID_LOG_SECURITY - MENUITEM "&Sistema", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Save &Protocol...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "C&lear all Events", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/fr-FR.rc b/reactos/base/applications/mscutils/eventvwr/lang/fr-FR.rc index fc4ae169fc7..83ff4a1176d 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/fr-FR.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/fr-FR.rc @@ -6,10 +6,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "Journa&l" BEGIN - MENUITEM "&Application", ID_LOG_APPLICATION - MENUITEM "&Sécurité", ID_LOG_SECURITY - MENUITEM "&Système", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Save &Protocol...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "Effacer tous &les événements", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/he-IL.rc b/reactos/base/applications/mscutils/eventvwr/lang/he-IL.rc index aafdb5bbf15..6b46f4ace85 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/he-IL.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/he-IL.rc @@ -6,10 +6,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "מציג האירועים (מקומי)" BEGIN - MENUITEM "יישום", ID_LOG_APPLICATION - MENUITEM "אבטחה", ID_LOG_SECURITY - MENUITEM "מערכת", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Save &Protocol...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "C&lear all Events", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/it-IT.rc b/reactos/base/applications/mscutils/eventvwr/lang/it-IT.rc index d1543a1626c..90462eb1d13 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/it-IT.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/it-IT.rc @@ -6,10 +6,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "&Log" BEGIN - MENUITEM "&Applicazioni", ID_LOG_APPLICATION - MENUITEM "&Sicurezza", ID_LOG_SECURITY - MENUITEM "&Sistema", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Save &Protocol...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "C&lear all Events", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/ja-JP.rc b/reactos/base/applications/mscutils/eventvwr/lang/ja-JP.rc index 5fb5194e80d..9ccff1e78b0 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/ja-JP.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/ja-JP.rc @@ -6,10 +6,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "ログ(&L)" BEGIN - MENUITEM "アプリケーション(&A)", ID_LOG_APPLICATION - MENUITEM "セキュリティ(&S)", ID_LOG_SECURITY - MENUITEM "システム(&S)", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Save &Protocol...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "C&lear all Events", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/ko-KR.rc b/reactos/base/applications/mscutils/eventvwr/lang/ko-KR.rc index 5d02fc087ba..d48971915d6 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/ko-KR.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/ko-KR.rc @@ -6,10 +6,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "로그(&L)" BEGIN - MENUITEM "애플리케이션(&A)", ID_LOG_APPLICATION - MENUITEM "보안(&S)", ID_LOG_SECURITY - MENUITEM "시스템(&S)", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Save &Protocol...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "C&lear all Events", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/no-NO.rc b/reactos/base/applications/mscutils/eventvwr/lang/no-NO.rc index f66eca5bc68..ff2bf2f824a 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/no-NO.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/no-NO.rc @@ -4,10 +4,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "&Logg" BEGIN - MENUITEM "&Applikasjon", ID_LOG_APPLICATION - MENUITEM "&Sikkerhet", ID_LOG_SECURITY - MENUITEM "&System", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Save &Protocol...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "C&lear all Events", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/pl-PL.rc b/reactos/base/applications/mscutils/eventvwr/lang/pl-PL.rc index 7432a6686ab..d139ed1969c 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/pl-PL.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/pl-PL.rc @@ -8,10 +8,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "&Logi" BEGIN - MENUITEM "&Aplikacja", ID_LOG_APPLICATION - MENUITEM "&Zabezpieczenia", ID_LOG_SECURITY - MENUITEM "&System", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Zapisz &protokół...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "W&yczyść wszystkie zdarzenia", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/pt-BR.rc b/reactos/base/applications/mscutils/eventvwr/lang/pt-BR.rc index 47f33b21bc9..ceb727e0d9d 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/pt-BR.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/pt-BR.rc @@ -6,10 +6,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "&Registro" BEGIN - MENUITEM "&Aplicativo", ID_LOG_APPLICATION - MENUITEM "S&egurança", ID_LOG_SECURITY - MENUITEM "&Sistema", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Save &Protocol...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "C&lear all Events", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/ro-RO.rc b/reactos/base/applications/mscutils/eventvwr/lang/ro-RO.rc index 2ddd76f241d..ebb1f6182e8 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/ro-RO.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/ro-RO.rc @@ -6,10 +6,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "J&urnal" BEGIN - MENUITEM "&Aplicație", ID_LOG_APPLICATION - MENUITEM "Se&curitate", ID_LOG_SECURITY - MENUITEM "&Sistem", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Păstrare p&rotocol…", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "Înlăt&ură toate evenimentele", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/ru-RU.rc b/reactos/base/applications/mscutils/eventvwr/lang/ru-RU.rc index 8a1a767751f..be6eb7fbb75 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/ru-RU.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/ru-RU.rc @@ -6,10 +6,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "&Логи" BEGIN - MENUITEM "&Приложений", ID_LOG_APPLICATION - MENUITEM "&Безопасности", ID_LOG_SECURITY - MENUITEM "&Системы", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Save &Protocol...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "C&lear all Events", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/sk-SK.rc b/reactos/base/applications/mscutils/eventvwr/lang/sk-SK.rc index a751ec062bc..12e3b00a094 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/sk-SK.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/sk-SK.rc @@ -9,10 +9,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "&Záznam" BEGIN - MENUITEM "&Application", ID_LOG_APPLICATION - MENUITEM "&Security", ID_LOG_SECURITY - MENUITEM "&System", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Save &Protocol...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "C&lear all Events", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/sq-AL.rc b/reactos/base/applications/mscutils/eventvwr/lang/sq-AL.rc index bb0be3429f3..7dc078369c3 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/sq-AL.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/sq-AL.rc @@ -12,10 +12,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "&Log" BEGIN - MENUITEM "&Aplikacion", ID_LOG_APPLICATION - MENUITEM "&Siguri", ID_LOG_SECURITY - MENUITEM "&Sistemi", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Save &Protocol...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "C&lear all Events", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/sv-SE.rc b/reactos/base/applications/mscutils/eventvwr/lang/sv-SE.rc index f9eb385f189..8b8e01e6a87 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/sv-SE.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/sv-SE.rc @@ -6,10 +6,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "&Logg" BEGIN - MENUITEM "&Applikation", ID_LOG_APPLICATION - MENUITEM "&Säkerhet", ID_LOG_SECURITY - MENUITEM "&System", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Save &Protocol...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "C&lear all Events", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/tr-TR.rc b/reactos/base/applications/mscutils/eventvwr/lang/tr-TR.rc index 1b54204c7ec..5c979d4c820 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/tr-TR.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/tr-TR.rc @@ -12,10 +12,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "&Kayıt" BEGIN - MENUITEM "&Uygulama", ID_LOG_APPLICATION - MENUITEM "&Güvenlik", ID_LOG_SECURITY - MENUITEM "&Dizge", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "&Protokolü Kaydet...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "&Tüm Olayları Sil", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/uk-UA.rc b/reactos/base/applications/mscutils/eventvwr/lang/uk-UA.rc index 82c61cab7a1..c6c6353c3e4 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/uk-UA.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/uk-UA.rc @@ -6,10 +6,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "&Звіт" BEGIN - MENUITEM "&Програма", ID_LOG_APPLICATION - MENUITEM "&Захист", ID_LOG_SECURITY - MENUITEM "&Система", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Save &Protocol...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "C&lear all Events", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/lang/zh-CN.rc b/reactos/base/applications/mscutils/eventvwr/lang/zh-CN.rc index 524cf3dd552..7ec7f850e55 100644 --- a/reactos/base/applications/mscutils/eventvwr/lang/zh-CN.rc +++ b/reactos/base/applications/mscutils/eventvwr/lang/zh-CN.rc @@ -6,10 +6,6 @@ IDC_EVENTVWR MENU BEGIN POPUP "日志(&L)" BEGIN - MENUITEM "应用程序日志(&A)", ID_LOG_APPLICATION - MENUITEM "安全日志(&S)", ID_LOG_SECURITY - MENUITEM "系统日志(&Y)", ID_LOG_SYSTEM - MENUITEM SEPARATOR MENUITEM "Save &Protocol...", ID_SAVE_PROTOCOL, GRAYED MENUITEM SEPARATOR MENUITEM "C&lear all Events", ID_CLEAR_EVENTS, GRAYED diff --git a/reactos/base/applications/mscutils/eventvwr/resource.h b/reactos/base/applications/mscutils/eventvwr/resource.h index b98a189c02e..f5cd0cb49fd 100644 --- a/reactos/base/applications/mscutils/eventvwr/resource.h +++ b/reactos/base/applications/mscutils/eventvwr/resource.h @@ -35,19 +35,18 @@ #define IDC_WORDRADIO 1013 #define IDC_EVENTDATAEDIT 1014 -#define ID_LOG_APPLICATION 32771 -#define ID_LOG_SECURITY 32772 -#define ID_LOG_SYSTEM 32773 -#define ID_HELP_HELP 32775 -#define ID_HELP 32776 -#define ID_OPTIONS 32777 -#define ID_VIEW 32778 -#define IDM_HELP 32779 -#define ID_VIEW_REFRESH 32780 -#define ID_REFRESH 32781 -#define IDM_REFRESH 32782 -#define ID_CLEAR_EVENTS 32783 -#define ID_SAVE_PROTOCOL 32784 +#define ID_HELP_HELP 32771 +#define ID_HELP 32772 +#define ID_OPTIONS 32773 +#define ID_VIEW 32774 +#define IDM_HELP 32775 +#define ID_VIEW_REFRESH 32776 +#define ID_REFRESH 32777 +#define IDM_REFRESH 32778 +#define ID_CLEAR_EVENTS 32779 +#define ID_SAVE_PROTOCOL 32780 + +#define ID_FIRST_LOG 45000 /* String IDs */ #define IDS_APP_TITLE 103