Merge branch 'reactos:master' into uxtheme-nt6plus-apis

This commit is contained in:
Splitwirez 2025-01-28 07:53:01 -08:00 committed by GitHub
commit 3f24fbbb97
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3206 changed files with 312106 additions and 70613 deletions

View file

@ -15,7 +15,7 @@ jobs:
- dllver: 0x600
config: Release
fail-fast: false
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
steps:
- name: Get RosBE build specifics
id: get_rosbe_spec
@ -165,6 +165,7 @@ jobs:
uses: ilammy/msvc-dev-cmd@v1
with:
arch: amd64_arm
sdk: 10.0.22621.0 # Windows SDK 10.0.26100.0 dropped support for 32-bit ARM
toolset: ${{matrix.toolset}}
- name: Activate VS cmd (arm64)
if: ${{ matrix.arch == 'arm64' }}

View file

@ -140,6 +140,10 @@ if(NOT CMAKE_CROSSCOMPILING)
add_definitions(/D_X86_ /D__i386__ /DWIN32 /D_WINDOWS)
elseif(ARCH STREQUAL "amd64")
add_definitions(-D_AMD64_ -D__x86_64__ /DWIN32 -D_WINDOWS)
elseif(ARCH STREQUAL "arm")
add_definitions(-D__arm__)
elseif(ARCH STREQUAL "arm64")
add_definitions(-D__aarch64__)
endif()
if(MSVC_VERSION GREATER 1699)
add_definitions(/D_ALLOW_KEYWORD_MACROS)
@ -233,6 +237,8 @@ Enable this if the module uses typeid or dynamic_cast. You will probably need to
-D_WIN32_WINDOWS=0x502
-D_SETUPAPI_VER=0x502
-DMINGW_HAS_SECURE_API=1
-DD3D_UMD_INTERFACE_VERSION=0x000C # Vista
-DDXGKDDI_INTERFACE_VERSION=0x1052 # Vista
-DDLL_EXPORT_VERSION=${DLL_EXPORT_VERSION})
# Arch Options
@ -250,7 +256,7 @@ Enable this if the module uses typeid or dynamic_cast. You will probably need to
elseif(ARCH STREQUAL "amd64")
# clang-cl defines this one for itself
if (NOT (MSVC AND CMAKE_C_COMPILER_ID STREQUAL "Clang"))
add_compile_definitions(_M_AMD64)
add_compile_definitions(_M_AMD64 _M_X64)
endif()
add_definitions(-D_AMD64_ -D__x86_64__ -D_WIN64)
elseif(ARCH STREQUAL "arm")
@ -310,6 +316,7 @@ Enable this if the module uses typeid or dynamic_cast. You will probably need to
sdk/include
sdk/include/psdk
sdk/include/dxsdk
sdk/include/winrt
${REACTOS_BINARY_DIR}/sdk/include
${REACTOS_BINARY_DIR}/sdk/include/psdk
${REACTOS_BINARY_DIR}/sdk/include/dxsdk
@ -317,10 +324,12 @@ Enable this if the module uses typeid or dynamic_cast. You will probably need to
${REACTOS_BINARY_DIR}/sdk/include/reactos
${REACTOS_BINARY_DIR}/sdk/include/reactos/mc
sdk/include/crt
sdk/include/vcruntime
sdk/include/ddk
sdk/include/ndk
sdk/include/reactos
sdk/include/reactos/libs)
sdk/include/reactos/libs
sdk/lib/pseh/include)
if(ARCH STREQUAL "arm")
include_directories(${REACTOS_SOURCE_DIR}/sdk/include/reactos/arm)
@ -337,7 +346,7 @@ Enable this if the module uses typeid or dynamic_cast. You will probably need to
add_subdirectory(sdk/include/asm)
if(ARCH MATCHES "64$")
include(sdk/cmake/baseaddress64.cmake)
include(sdk/cmake/baseaddress64.cmake)
elseif(NO_ROSSYM)
include(sdk/cmake/baseaddress_dwarf.cmake)
elseif(MSVC)

View file

@ -35,4 +35,4 @@ typedef struct _SENDCMDINPARAMS {
ULONG dwReserved[4];
UCHAR bBuffer[1];
} SENDCMDINPARAMS, *PSENDCMDINPARAMS, *LPSENDCMDINPARAMS;
#include <poppack.h>
#include <poppack.h>

View file

@ -28,7 +28,7 @@
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
/* Icons */
IDI_CALC ICON DISCARDABLE "res/calc.ico"
IDI_CALC ICON "res/calc.ico"
/* Manifest */
#include <reactos/manifest_exe.rc>

View file

@ -1015,10 +1015,16 @@ static void handle_copy_command(HWND hWnd)
TCHAR display[MAX_CALC_SIZE];
UINT n;
// Read current text from output display
n = GetDlgItemText(hWnd, IDC_TEXT_OUTPUT, display, SIZEOF(display));
if (calc.base == IDC_RADIO_DEC && _tcschr(calc.buffer, _T('.')) == NULL)
display[n - calc.sDecimal_len] = _T('\0');
// Check if result is a true number
if (!calc.is_nan)
{
// Remove trailing decimal point if no decimal digits exist
if (calc.base == IDC_RADIO_DEC && _tcschr(calc.buffer, _T('.')) == NULL)
display[n - calc.sDecimal_len] = _T('\0');
}
CopyMemToClipboard(display);
}

View file

@ -91,4 +91,4 @@ CCell::SetCellCoordinates(
)
{
m_CellCoordinates = Coordinates;
}
}

View file

@ -519,4 +519,4 @@ CGridView::SetCellFocus(
// Set the new active cell and give it focus
m_ActiveCell = NewActiveCell;
m_ActiveCell->SetFocus(true);
}
}

View file

@ -81,4 +81,4 @@ private:
bool ChangeMapFont(
);
};
};

View file

@ -51,4 +51,4 @@
//WINE_DEFAULT_DEBUG_CHANNEL(charmap);
#endif
#endif

View file

@ -257,9 +257,9 @@ void SetDIBitsToDeviceFromClipboard(UINT uFormat, PAINTSTRUCT ps, SCROLLSTATE st
*
* FIXME: investigate!!
* ANSWER: this is a Windows bug; part of the answer is there:
* https://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/ac7ab3b5-8609-4478-b86a-976dab44c271/bug-clipboard-format-conversions-cfdib-cfdibv5-cfdib
* https://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/ac7ab3b5-8609-4478-b86a-976dab44c271/bug-clipboard-format-conversions-cfdib-cfdibv5-cfdib (DEAD_LINK)
* May be related:
* https://blog.talosintelligence.com/2015/10/dangerous-clipboard.html
* https://blog.talosintelligence.com/dangerous-clipboard/
*/
#if 0
if ((lpInfoHeader->biSize == sizeof(BITMAPINFOHEADER)) &&

View file

@ -9,6 +9,7 @@
/* UTF-8 */
#pragma code_page(65001)
#ifdef LANGUAGE_DE_DE
#include "lang/de-DE.rc"
#endif

View file

@ -150,7 +150,7 @@ typedef struct _ENUMFILES_CTX
static BOOL
EnumFilesWorker(
_Inout_ PENUMFILES_CTX EnumCtx,
_Inout_ off_t offFilePart) // Offset to the file name inside FullPathBuffer
_Inout_ _off_t offFilePart) // Offset to the file name inside FullPathBuffer
{
BOOL bFound = FALSE;
HRESULT hRes;
@ -243,7 +243,7 @@ EnumFilesWorker(
do
{
BOOL bIsDir = !!(EnumCtx->findData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY);
BOOL bExactMatch = (wcsicmp(findFileName, EnumCtx->FileName) == 0);
BOOL bExactMatch = (_wcsicmp(findFileName, EnumCtx->FileName) == 0);
if (bIsDir && !(EnumCtx->Flags & ENUM_DIRECTORIES) && !bExactMatch)
continue;
@ -330,9 +330,9 @@ int wmain(int argc, WCHAR *argv[])
}
else
/* Retrieve the enumeration modes */
if (wcsicmp(argv[i], L"/s") == 0)
if (_wcsicmp(argv[i], L"/s") == 0)
dwEnumFlags |= ENUM_RECURSE;
else if (wcsicmp(argv[i], L"/d") == 0)
else if (_wcsicmp(argv[i], L"/d") == 0)
dwEnumFlags |= ENUM_DIRECTORIES;
else
{

View file

@ -13,7 +13,7 @@ add_executable(cscript ${SOURCE} rsrc.rc)
add_idl_headers(cscript_idlheader ihost.idl)
add_typelib(ihost.idl)
set_source_files_properties(rsrc.rc PROPERTIES OBJECT_DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/ihost.tlb)
target_link_libraries(cscript uuid wine)
target_link_libraries(cscript uuid wine oldnames)
set_module_type(cscript win32cui UNICODE)
add_delay_importlibs(cscript shlwapi)
add_importlibs(cscript shell32 oleaut32 ole32 advapi32 user32 msvcrt kernel32 ntdll)

View file

@ -305,8 +305,8 @@ wmain(VOID)
{
pszExeName = RemoveQuotes(pArgStart + 9);
}
else if (!wcsicmp(pArgStart, L"/H") ||
!wcsicmp(pArgStart, L"/HISTORY"))
else if (!_wcsicmp(pArgStart, L"/H") ||
!_wcsicmp(pArgStart, L"/HISTORY"))
{
PrintHistory();
}
@ -314,20 +314,20 @@ wmain(VOID)
{
SetConsoleNumberOfCommandsW(_wtoi(pArgStart + 10), pszExeName);
}
else if (!wcsicmp(pArgStart, L"/REINSTALL"))
else if (!_wcsicmp(pArgStart, L"/REINSTALL"))
{
ExpungeConsoleCommandHistoryW(pszExeName);
}
else if (!wcsicmp(pArgStart, L"/INSERT"))
else if (!_wcsicmp(pArgStart, L"/INSERT"))
{
SetInsert(ENABLE_INSERT_MODE);
}
else if (!wcsicmp(pArgStart, L"/OVERSTRIKE"))
else if (!_wcsicmp(pArgStart, L"/OVERSTRIKE"))
{
SetInsert(0);
}
else if (!wcsicmp(pArgStart, L"/M") ||
!wcsicmp(pArgStart, L"/MACROS"))
else if (!_wcsicmp(pArgStart, L"/M") ||
!_wcsicmp(pArgStart, L"/MACROS"))
{
PrintMacros(pszExeName, L"");
}
@ -335,7 +335,7 @@ wmain(VOID)
!_wcsnicmp(pArgStart, L"/MACROS:", 8))
{
LPWSTR exe = RemoveQuotes(wcschr(pArgStart, L':') + 1);
if (!wcsicmp(exe, L"ALL"))
if (!_wcsicmp(exe, L"ALL"))
PrintAllMacros();
else
PrintMacros(exe, L"");

View file

@ -6,7 +6,9 @@
#define REACTOS_STR_ORIGINAL_FILENAME "fc.exe"
#include <reactos/version.rc>
#pragma code_page(65001) /* UTF-8 */
/* UTF-8 */
#pragma code_page(65001)
#ifdef LANGUAGE_BG_BG
#include "lang/bg-BG.rc"
#endif

View file

@ -9,6 +9,7 @@
/* UTF-8 */
#pragma code_page(65001)
#ifdef LANGUAGE_BG_BG
#include "lang/bg-BG.rc"
#endif

View file

@ -12,6 +12,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
/* UTF-8 */
#pragma code_page(65001)
#ifdef LANGUAGE_DE_DE
#include "lang/de-DE.rc"
#endif

View file

@ -56,7 +56,7 @@ int wmain(int argc, WCHAR* argv[])
}
else
{
if ((wcsicmp(argv[1], L"-s") == 0) || (wcsicmp(argv[1], L"/s") == 0))
if ((_wcsicmp(argv[1], L"-s") == 0) || (_wcsicmp(argv[1], L"/s") == 0))
{
/* The program doesn't allow the user to set the host name */
LoadStringW(GetModuleHandle(NULL), IDS_NOSET, Msg, _countof(Msg));

View file

@ -176,19 +176,20 @@ PagePrompt(PCON_PAGER Pager, DWORD Done, DWORD Total)
static WCHAR StrLineAt[80] = L"";
static WCHAR StrOptions[80] = L"";
static WCHAR StrLines[80] = L"";
static BOOL AreStrLoaded = FALSE;
WCHAR szPercent[80] = L"";
WCHAR szLineAt[80] = L"";
/* Load the prompt strings */
if (!*StrPercent)
if (!AreStrLoaded)
{
K32LoadStringW(NULL, IDS_CONTINUE_PERCENT, StrPercent, ARRAYSIZE(StrPercent));
if (!*StrLineAt)
K32LoadStringW(NULL, IDS_CONTINUE_LINE_AT, StrLineAt, ARRAYSIZE(StrLineAt));
if (!*StrOptions)
K32LoadStringW(NULL, IDS_CONTINUE_OPTIONS, StrOptions, ARRAYSIZE(StrOptions));
if (!*StrLines)
K32LoadStringW(NULL, IDS_CONTINUE_LINES, StrLines, ARRAYSIZE(StrLines));
AreStrLoaded = TRUE;
}
/*
* Check whether the pager is prompting, but we have actually finished
@ -486,7 +487,7 @@ Restart:
* See base/applications/cmdutils/clip/clip.c!IsDataUnicode()
* and base/applications/notepad/text.c!ReadText() for more details.
* Also some good code example can be found at:
* https://github.com/AutoIt/text-encoding-detect
* https://github.com/AutoItConsulting/text-encoding-detect
*/
typedef enum
{

View file

@ -5,6 +5,6 @@ add_definitions(-D_WIN32_WINNT=0x600)
add_definitions(-D__WINESRC__)
add_executable(reg add.c copy.c delete.c export.c import.c query.c reg.c reg.rc)
set_module_type(reg win32cui UNICODE)
target_link_libraries(reg wine)
target_link_libraries(reg wine oldnames)
add_importlibs(reg advapi32 advapi32_vista user32 msvcrt kernel32 ntdll)
add_cd_file(TARGET reg DESTINATION reactos/system32 FOR all)

View file

@ -9,6 +9,7 @@
/* UTF-8 */
#pragma code_page(65001)
#ifdef LANGUAGE_BG_BG
#include "lang/bg-BG.rc"
#endif

View file

@ -11,6 +11,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
/* UTF-8 */
#pragma code_page(65001)
#ifdef LANGUAGE_DE_DE
#include "lang/de-DE.rc"
#endif

View file

@ -6,7 +6,8 @@
#define REACTOS_STR_ORIGINAL_FILENAME "where.exe"
#include <reactos/version.rc>
#pragma code_page(65001) /* UTF-8 */
/* UTF-8 */
#pragma code_page(65001)
#ifdef LANGUAGE_DE_DE
#include "lang/de-DE.rc"

View file

@ -39,7 +39,7 @@ BOOL GetArgument(WCHAR* arg, int argc, WCHAR* argv[])
for (i = 1; i < argc; i++)
{
if (wcsicmp(argv[i], arg) == 0)
if (_wcsicmp(argv[i], arg) == 0)
return TRUE;
}
@ -698,7 +698,7 @@ int wmain(int argc, WCHAR* argv[])
/* first things first-- let's detect and manage both printing modifiers (/fo and /nh) */
for (i = 1; i < argc; i++)
{
if (wcsicmp(argv[i], L"/nh") == 0)
if (_wcsicmp(argv[i], L"/nh") == 0)
{
NoHeaderArgCount++;
@ -713,7 +713,7 @@ int wmain(int argc, WCHAR* argv[])
for (i = 1; i < argc; i++)
{
if (wcsicmp(argv[i], L"/fo") == 0)
if (_wcsicmp(argv[i], L"/fo") == 0)
{
if ((i + 1) < argc)
{
@ -721,14 +721,14 @@ int wmain(int argc, WCHAR* argv[])
PrintFormatArgCount++;
if (wcsicmp(argv[i + 1], L"table") == 0 && PrintFormat != table)
if (_wcsicmp(argv[i + 1], L"table") == 0 && PrintFormat != table)
{
PrintFormat = table;
// wprintf(L"Changed to table format\n");
BlankArgument(i, argv);
BlankArgument(i + 1, argv);
}
else if (wcsicmp(argv[i + 1], L"list") == 0 && PrintFormat != list)
else if (_wcsicmp(argv[i + 1], L"list") == 0 && PrintFormat != list)
{
PrintFormat = list;
// wprintf(L"Changed to list format\n");
@ -743,7 +743,7 @@ int wmain(int argc, WCHAR* argv[])
return 1;
}
}
else if (wcsicmp(argv[i + 1], L"csv") == 0 && PrintFormat != csv)
else if (_wcsicmp(argv[i + 1], L"csv") == 0 && PrintFormat != csv)
{
PrintFormat = csv;
// wprintf(L"Changed to csv format\n");
@ -751,14 +751,14 @@ int wmain(int argc, WCHAR* argv[])
BlankArgument(i + 1, argv);
}
/* /nh or /fo after /fo isn't parsed as a value */
else if (wcsicmp(argv[i + 1], L"/nh") == 0 || wcsicmp(argv[i + 1], L"/fo") == 0
else if (_wcsicmp(argv[i + 1], L"/nh") == 0 || _wcsicmp(argv[i + 1], L"/fo") == 0
/* same goes for the other named options, not ideal, but works */
|| wcsicmp(argv[i + 1], L"/priv") == 0
|| wcsicmp(argv[i + 1], L"/groups") == 0
|| wcsicmp(argv[i + 1], L"/user") == 0
|| wcsicmp(argv[i + 1], L"/all") == 0
|| wcsicmp(argv[i + 1], L"") == 0)
|| _wcsicmp(argv[i + 1], L"/priv") == 0
|| _wcsicmp(argv[i + 1], L"/groups") == 0
|| _wcsicmp(argv[i + 1], L"/user") == 0
|| _wcsicmp(argv[i + 1], L"/all") == 0
|| _wcsicmp(argv[i + 1], L"") == 0)
{
goto FoValueExpected;
}
@ -806,13 +806,13 @@ int wmain(int argc, WCHAR* argv[])
if (argc == 2)
{
/* now let's try to parse the triumvirate of simpler, single (1) arguments... plus help */
if (wcsicmp(argv[1], L"/?") == 0)
if (_wcsicmp(argv[1], L"/?") == 0)
{
wprintf(WhoamiLoadRcString(IDS_HELP));
return 0;
}
else if (wcsicmp(argv[1], L"/upn") == 0)
else if (_wcsicmp(argv[1], L"/upn") == 0)
{
LPWSTR UserBuffer = WhoamiGetUser(NameUserPrincipal);
@ -829,7 +829,7 @@ int wmain(int argc, WCHAR* argv[])
}
}
else if (wcsicmp(argv[1], L"/fqdn") == 0)
else if (_wcsicmp(argv[1], L"/fqdn") == 0)
{
LPWSTR UserBuffer = WhoamiGetUser(NameFullyQualifiedDN);
@ -846,7 +846,7 @@ int wmain(int argc, WCHAR* argv[])
}
}
else if (wcsicmp(argv[1], L"/logonid") == 0)
else if (_wcsicmp(argv[1], L"/logonid") == 0)
{
return WhoamiLogonId();
}
@ -858,11 +858,11 @@ int wmain(int argc, WCHAR* argv[])
/* sometimes is just easier to whitelist for lack of a better method */
for (i=1; i<argc; i++)
{
if ((wcsicmp(argv[i], L"/user") != 0) &&
(wcsicmp(argv[i], L"/groups") != 0) &&
(wcsicmp(argv[i], L"/priv") != 0) &&
(wcsicmp(argv[i], L"/all") != 0) &&
(wcsicmp(argv[i], L"") != 0))
if ((_wcsicmp(argv[i], L"/user") != 0) &&
(_wcsicmp(argv[i], L"/groups") != 0) &&
(_wcsicmp(argv[i], L"/priv") != 0) &&
(_wcsicmp(argv[i], L"/all") != 0) &&
(_wcsicmp(argv[i], L"") != 0))
{
wprintf(WhoamiLoadRcString(IDS_ERROR_INVALIDARG), argv[i]);
return 1;

View file

@ -11,7 +11,7 @@ add_executable(wscript ${SOURCE} rsrc.rc)
add_idl_headers(wscript_idlheader ihost.idl)
add_typelib(ihost.idl)
set_source_files_properties(rsrc.rc PROPERTIES OBJECT_DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/ihost.tlb)
target_link_libraries(wscript uuid wine)
target_link_libraries(wscript uuid wine oldnames)
set_module_type(wscript win32gui UNICODE)
add_delay_importlibs(wscript shlwapi)
add_importlibs(wscript shell32 oleaut32 ole32 user32 advapi32 msvcrt kernel32 ntdll)

View file

@ -7,7 +7,7 @@ card-game library.
Freeware
Copyright J Brown 2001
Updates at http://www.catch22.net
Updates at https://www.catch22.net/
******************************************/

View file

@ -1,24 +1,29 @@
box.wav
License: CC0 1.0 Universal
By: amitYunger123 <https://freesound.org/people/amitYunger123/>
License: CC0 1.0 Universal <https://creativecommons.org/publicdomain/zero/1.0/>
URL: https://freesound.org/people/amitYunger123/sounds/737638/
Date: 30-May-2024
explode.wav
License: CC0 1.0 Universal
By: hoffy1138 <https://freesound.org/people/hoffy1138/>
License: CC0 1.0 Universal <https://creativecommons.org/publicdomain/zero/1.0/>
URL: https://freesound.org/people/hoffy1138/sounds/276968/
Date: 31-May-2024
flag.wav
License: CC0 1.0 Universal
By: ProfoundSounds <https://freesound.org/people/profoundsounds/>
License: CC0 1.0 Universal <https://creativecommons.org/publicdomain/zero/1.0/>
URL: https://freesound.org/people/profoundsounds/sounds/733230/
Date: 30-May-2024
question.wav
License: CC0 1.0 Universal
By: Irolan <https://freesound.org/people/Irolan/>
License: CC0 1.0 Universal <https://creativecommons.org/publicdomain/zero/1.0/>
URL: https://freesound.org/people/Irolan/sounds/737510/
Date: 30-May-2024
win.wav
License: CC0 1.0 Universal
By: David819 <https://freesound.org/people/David819/>
License: CC0 1.0 Universal <https://creativecommons.org/publicdomain/zero/1.0/>
URL: https://freesound.org/people/David819/sounds/668436/
Date: 31-May-2024

View file

@ -11,12 +11,12 @@ LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
IDD_MSCONFIG_DIALOG DIALOGEX 0, 0, 378, 220
STYLE DS_SHELLFONT | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP |
WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU
CAPTION "Program de configurare sistem"
CAPTION "Program de configurare a sistemului"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Tab1", IDC_TAB, "SysTabControl32", WS_TABSTOP, 2, 2, 374, 195
DEFPUSHBUTTON "OK", IDOK, 211, 201, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Manual…", IDC_BTN_HELP, 2, 201, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Ajutor", IDC_BTN_HELP, 2, 201, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "Revocare", IDCANCEL, 267, 201, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "Aplicare", IDC_BTN_APPLY, 323, 201, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
END
@ -73,13 +73,13 @@ IDD_GENERAL_PAGE DIALOGEX 0, 0, 362, 175
STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN
FONT 8, "MS Shell Dlg"
BEGIN
GROUPBOX "Moduri de pornire sistem", -1, 10, 10, 340, 150, 0, WS_EX_TRANSPARENT
GROUPBOX "Moduri de pornire a sistemului", -1, 10, 10, 340, 150, 0, WS_EX_TRANSPARENT
CONTROL "Pornire n&ormală - încarcă toate serviciile și driverele", IDC_CBX_NORMAL_START, "Button", 0x50010009, 20, 30, 260, 10
CONTROL "Pornire de &diagnostic - încarcă doar driverele de bază", IDC_CBX_DIAGNOSTIC_START, "Button", 0x50010009, 20, 45, 260, 10
CONTROL "Pornire s&electivă", IDC_CBX_SELECTIVE_STARTUP, "Button", 0x50010009, 20, 60, 260, 10
AUTOCHECKBOX "&Procesare fișier SYSTEM.INI", IDC_CBX_SYSTEM_INI, 30, 80, 260, 10
AUTOCHECKBOX "Încărcare se&rvicii de sistem", IDC_CBX_SYSTEM_SERVICE, 30, 95, 260, 10
AUTOCHECKBOX "Încărcare ele&mente autolansate", IDC_CBX_STARTUP_ITEM, 30, 110, 260, 10
AUTOCHECKBOX "&Procesare a fișierului SYSTEM.INI", IDC_CBX_SYSTEM_INI, 30, 80, 260, 10
AUTOCHECKBOX "Încărcare a se&rviciilor de sistem", IDC_CBX_SYSTEM_SERVICE, 30, 95, 260, 10
AUTOCHECKBOX "Încărcare a ele&mentelor autolansate", IDC_CBX_STARTUP_ITEM, 30, 110, 260, 10
END
IDD_FREELDR_PAGE DIALOGEX 0, 0, 362, 175
@ -90,14 +90,14 @@ BEGIN
LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_HSCROLL
PUSHBUTTON "Verificare a tuturor &căilor de pornire", IDC_BTN_CHECK_BOOT_PATH, 10, 65, 145, 12
PUSHBUTTON "I&mplicite", IDC_BTN_SET_DEFAULT_BOOT, 165, 65, 55, 12
PUSHBUTTON "Mutare s&us", IDC_BTN_MOVE_UP_BOOT_OPTION, 230, 65, 55, 12
PUSHBUTTON "Mutare j&os", IDC_BTN_MOVE_DOWN_BOOT_OPTION, 295, 65, 55, 12
PUSHBUTTON "Mutare &sus", IDC_BTN_MOVE_UP_BOOT_OPTION, 230, 65, 55, 12
PUSHBUTTON "Mutare &jos", IDC_BTN_MOVE_DOWN_BOOT_OPTION, 295, 65, 55, 12
GROUPBOX "Parametri de pornire", -1, 10, 80, 250, 90, 0, WS_EX_TRANSPARENT
CHECKBOX "/SAFE&BOOT", IDC_CBX_SAFE_BOOT, 15, 90, 55, 10
CHECKBOX "/NO&GUIBOOT", IDC_CBX_NO_GUI_BOOT, 15, 105, 60, 10
CHECKBOX "/BOOT&LOG", IDC_CBX_BOOT_LOG, 15, 120, 50, 10
CHECKBOX "/BASEVI&DEO", IDC_CBX_BASE_VIDEO, 15, 135, 55, 10
CHECKBOX "/&SOS", IDC_CBX_SOS, 15, 150, 50, 10
CHECKBOX "/S&OS", IDC_CBX_SOS, 15, 150, 50, 10
PUSHBUTTON "Opțiuni a&vansate…", IDC_BTN_ADVANCED_OPTIONS, 100, 150, 80, 12
LTEXT "&Expirare:", -1, 280, 91, 30, 10
EDITTEXT IDC_TXT_BOOT_TIMEOUT, 310, 90, 25, 12, ES_LEFT
@ -131,19 +131,19 @@ END
STRINGTABLE
BEGIN
IDS_MSCONFIG "Configuratorul de sistem"
IDS_TAB_GENERAL "Generale"
IDS_MSCONFIG "Programul de configurare a sistemului"
IDS_TAB_GENERAL "General"
IDS_TAB_SYSTEM "SYSTEM.INI"
IDS_TAB_FREELDR "FREELDR.INI"
IDS_TAB_SERVICES "Servicii"
IDS_TAB_STARTUP "Autolansate"
IDS_TAB_STARTUP "Pornire"
IDS_TAB_TOOLS "Instrumente"
END
STRINGTABLE
BEGIN
IDS_SERVICES_COLUMN_SERVICE "Servicii"
IDS_SERVICES_COLUMN_REQ "De bază"
IDS_SERVICES_COLUMN_SERVICE "Serviciu"
IDS_SERVICES_COLUMN_REQ "Necesare"
IDS_SERVICES_COLUMN_VENDOR "Furnizor"
IDS_SERVICES_COLUMN_STATUS "Stare"
END
@ -156,13 +156,13 @@ BEGIN
IDS_TOOLS_CMD_DESCR ""
IDS_TOOLS_CMD_CMD "cmd.exe"
IDS_TOOLS_INFO_NAME "Versiune"
IDS_TOOLS_INFO_DESCR "Afișare informații despre versiune"
IDS_TOOLS_INFO_DESCR "Afișează informații despre versiune."
IDS_TOOLS_INFO_CMD "winver.exe"
IDS_TOOLS_REGEDIT_NAME "Editor de registru"
IDS_TOOLS_REGEDIT_DESCR "Deschide editorul de registru."
IDS_TOOLS_REGEDIT_DESCR "Deschide Editorul de registru."
IDS_TOOLS_REGEDIT_CMD "regedit.exe"
IDS_TOOLS_SYSDM_NAME "Proprietăți de sistem"
IDS_TOOLS_SYSDM_DESCR "Prezintă informații despre calculator"
IDS_TOOLS_SYSDM_DESCR "Prezintă informații despre calculator."
IDS_TOOLS_SYSDM_CMD "control.exe"
IDS_TOOLS_SYSDM_PARAM "sysdm.cpl"
IDS_STARTUP_COLUMN_ELEMENT "Element"
@ -172,7 +172,7 @@ END
STRINGTABLE
BEGIN
IDS_SERVICES_STATUS_RUNNING "Pornit"
IDS_SERVICES_STATUS_RUNNING "Rulează"
IDS_SERVICES_STATUS_STOPPED "Oprit"
IDS_SERVICES_YES "Da"
IDS_SERVICES_UNKNOWN "Nespecificat"

View file

@ -28,7 +28,7 @@ HRESULT GetComCtl32Version(OUT PDWORD pdwMajor, OUT PDWORD pdwMinor, OUT PDWORD
*/
/*
* See: https://msdn.microsoft.com/en-us/library/windows/desktop/hh298349(v=vs.85).aspx
* See: https://learn.microsoft.com/en-us/windows/win32/controls/common-control-versions
* and: http://www.geoffchappell.com/studies/windows/shell/comctl32/history/
* for the possible version values to be returned.
*/

View file

@ -10,38 +10,38 @@ LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
IDD_ABOUTBOX DIALOGEX 0, 0, 229, 98
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Despre programul de configurare al sistemului"
CAPTION "Despre programul de configurare a sistemului"
FONT 8, "MS Shell Dlg"
BEGIN
ICON IDI_APPICON, IDC_STATIC, 14, 14, 20, 20
LTEXT "Program de configurare al sistemului\nVersiune 1.0", IDC_STATIC, 42, 14, 182, 17, SS_NOPREFIX
LTEXT "Program de configurare a sistemului\nVersiune 1.0", IDC_STATIC, 42, 14, 182, 17, SS_NOPREFIX
// "Copyright (C) ReactOS Team 2005-"COPYRIGHT_YEAR"\n"
LTEXT "Drept de autor (C) Echipa ReactOS 2005-2023\n\
Christoph von Wittich (Christoph@ApiViewer.de)\n\
Gregor Schneider (Gregor.Schneider@reactos.org)\n\
Hermès BÉLUSCA - MAÏTO (hermes.belusca@sfr.fr)",
IDC_STATIC, 41, 34, 183, 34
DEFPUSHBUTTON "Î&nchide", IDOK, 174, 79, 50, 14, WS_GROUP
DEFPUSHBUTTON "OK", IDOK, 174, 79, 50, 14, WS_GROUP
END
IDD_GENERAL_PAGE DIALOGEX 0, 0, 366, 175
STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION
CAPTION "Generale"
CAPTION "General"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "&Pornire normală", IDC_RB_NORMAL_STARTUP, "Button", BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP, 15, 18, 332, 10
CONTROL "Pornire de &diagnostic", IDC_RB_DIAGNOSTIC_STARTUP, "Button", BS_AUTORADIOBUTTON, 15, 46, 332, 10
CONTROL "Pornire selecti&vă", IDC_RB_SELECTIVE_STARTUP, "Button", BS_AUTORADIOBUTTON, 15, 73, 332, 10
CONTROL "Procesează fișierul S&YSTEM.INI", IDC_CBX_SYSTEM_INI, "Button", BS_AUTO3STATE | WS_TABSTOP, 35, 86, 316, 10
CONTROL "Procesează fișierul &WIN.INI", IDC_CBX_WIN_INI, "Button", BS_AUTO3STATE | WS_TABSTOP, 35, 98, 316, 10
CONTROL "În&carcă serviciile de sistem", IDC_CBX_LOAD_SYSTEM_SERVICES, "Button", BS_AUTO3STATE | WS_TABSTOP, 35, 110, 316, 10
CONTROL "Încarcă &elementele autolansate", IDC_CBX_LOAD_STARTUP_ITEMS, "Button", BS_AUTO3STATE | WS_TABSTOP, 35, 122, 316, 10
CONTROL "&Utilizează configurația originală de inițializare", IDC_CBX_USE_ORIGINAL_BOOTCFG, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 35, 134, 316, 10
PUSHBUTTON "Lansează &Restaurare sistem", IDC_BTN_SYSTEM_RESTORE_START, 146, 156, 124, 14
CONTROL "Procesare a fișierului S&YSTEM.INI", IDC_CBX_SYSTEM_INI, "Button", BS_AUTO3STATE | WS_TABSTOP, 35, 86, 316, 10
CONTROL "Procesare a fișierului &WIN.INI", IDC_CBX_WIN_INI, "Button", BS_AUTO3STATE | WS_TABSTOP, 35, 98, 316, 10
CONTROL "În&cărcare a serviciilor de sistem", IDC_CBX_LOAD_SYSTEM_SERVICES, "Button", BS_AUTO3STATE | WS_TABSTOP, 35, 110, 316, 10
CONTROL "Încărcare a &elementelor de pornire", IDC_CBX_LOAD_STARTUP_ITEMS, "Button", BS_AUTO3STATE | WS_TABSTOP, 35, 122, 316, 10
CONTROL "&Utilizare a configurației originale de pornire", IDC_CBX_USE_ORIGINAL_BOOTCFG, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 35, 134, 316, 10
PUSHBUTTON "Lansare &Restaurare sistem", IDC_BTN_SYSTEM_RESTORE_START, 146, 156, 124, 14
PUSHBUTTON "E&xtindere fișier…", IDC_BTN_FILE_EXTRACTION, 275, 156, 85, 14
GROUPBOX "Moduri de pornire sistem", IDC_STATIC, 5, 5, 356, 145
LTEXT "Încarcă toate serviciile și driverele", IDC_STATIC, 25, 30, 322, 10
LTEXT "Încarcă doar driverele de bază", IDC_STATIC, 25, 58, 322, 10
GROUPBOX "Selecție de pornire", IDC_STATIC, 5, 5, 356, 145
LTEXT "Încărcare a tuturor serviciilor și driverelor", IDC_STATIC, 25, 30, 322, 10
LTEXT "Încărcare doar driverelor de bază", IDC_STATIC, 25, 58, 322, 10
END
IDD_SYSTEM_PAGE DIALOGEX 0, 0, 366, 175
@ -50,16 +50,16 @@ CAPTION "Sistem"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_SYSTEM_TREE, "SysTreeView32", TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_EDITLABELS | TVS_SHOWSELALWAYS | WS_BORDER | WS_HSCROLL | WS_TABSTOP, 5, 5, 285, 146
PUSHBUTTON "Mută s&us", IDC_BTN_SYSTEM_UP, 295, 5, 66, 14
PUSHBUTTON "Mută j&os", IDC_BTN_SYSTEM_DOWN, 295, 24, 66, 14
PUSHBUTTON "A&ctivează", IDC_BTN_SYSTEM_ENABLE, 295, 52, 66, 14
PUSHBUTTON "D&ezactivează", IDC_BTN_SYSTEM_DISABLE, 295, 71, 66, 14
PUSHBUTTON "&Găsește", IDC_BTN_SYSTEM_FIND, 295, 99, 66, 14
PUSHBUTTON "Mutare &sus", IDC_BTN_SYSTEM_UP, 295, 5, 66, 14
PUSHBUTTON "Mutare &jos", IDC_BTN_SYSTEM_DOWN, 295, 24, 66, 14
PUSHBUTTON "&Activare", IDC_BTN_SYSTEM_ENABLE, 295, 52, 66, 14
PUSHBUTTON "&Dezactivare", IDC_BTN_SYSTEM_DISABLE, 295, 71, 66, 14
PUSHBUTTON "&Găsire", IDC_BTN_SYSTEM_FIND, 295, 99, 66, 14
PUSHBUTTON "Nou", IDC_BTN_SYSTEM_NEW, 295, 118, 66, 14
PUSHBUTTON "E&ditează", IDC_BTN_SYSTEM_EDIT, 295, 137, 66, 14
PUSHBUTTON "Acti&vează toate", IDC_BTN_SYSTEM_ENABLE_ALL, 153, 156, 66, 14
PUSHBUTTON "De&zactivează toate", IDC_BTN_SYSTEM_DISABLE_ALL, 224, 156, 66, 14
PUSHBUTTON "Eli&mină", IDC_BTN_SYSTEM_DELETE, 295, 156, 66, 14
PUSHBUTTON "&Editare", IDC_BTN_SYSTEM_EDIT, 295, 137, 66, 14
PUSHBUTTON "Acti&vare totală", IDC_BTN_SYSTEM_ENABLE_ALL, 153, 156, 66, 14
PUSHBUTTON "De&zactivare totală", IDC_BTN_SYSTEM_DISABLE_ALL, 224, 156, 66, 14
PUSHBUTTON "Eli&minare", IDC_BTN_SYSTEM_DELETE, 295, 156, 66, 14
END
IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175
@ -68,29 +68,29 @@ CAPTION "FREELDR.INI"
FONT 8, "MS Shell Dlg"
BEGIN
LISTBOX IDC_LIST_BOX, 5, 5, 356, 61, LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP
PUSHBUTTON "&Verifică toate căile de inițializare", IDC_BTN_CHECK_BOOT_PATH, 5, 68, 72, 14
PUSHBUTTON "Impli&cite", IDC_BTN_SET_DEFAULT_BOOT, 82, 68, 66, 14
PUSHBUTTON "Mută s&us", IDC_BTN_MOVE_UP_BOOT_OPTION, 153, 68, 66, 14
PUSHBUTTON "Mută j&os", IDC_BTN_MOVE_DOWN_BOOT_OPTION, 224, 68, 66, 14
GROUPBOX "Parametri de inițializare", IDC_STATIC, 5, 84, 285, 86
PUSHBUTTON "&Verificare a tuturor căilor de pornire", IDC_BTN_CHECK_BOOT_PATH, 5, 68, 72, 14
PUSHBUTTON "Impli&cit", IDC_BTN_SET_DEFAULT_BOOT, 82, 68, 66, 14
PUSHBUTTON "Mutare &sus", IDC_BTN_MOVE_UP_BOOT_OPTION, 153, 68, 66, 14
PUSHBUTTON "Mutare &jos", IDC_BTN_MOVE_DOWN_BOOT_OPTION, 224, 68, 66, 14
GROUPBOX "Opțiuni de pornire", IDC_STATIC, 5, 84, 285, 86
GROUPBOX "", IDC_STATIC, 10, 97, 143, 68
CHECKBOX "Inițializare securi&zată (/SAFEBOOT)", IDC_CBX_SAFE_BOOT, 15, 97, 121, 10
CHECKBOX "&Pornire sigură (/SAFEBOOT)", IDC_CBX_SAFE_BOOT, 15, 97, 121, 10
CONTROL "&Minimală (MINIMAL)", IDC_RADIO1, "Button", BS_AUTORADIOBUTTON, 15, 110, 133, 10
CONTROL "Mediu alternativ\n(MINIMAL (ALTERNATE&SHELL))", IDC_RADIO4,
CONTROL "Alt mediu\n(MINIMAL (ALTERNATE&SHELL))", IDC_RADIO4,
"Button", BS_AUTORADIOBUTTON | BS_MULTILINE, 15, 121, 133, 17
CONTROL "&Repară ActiveDirectory (DSREPAIR)", IDC_RADIO3, "Button", BS_AUTORADIOBUTTON, 15, 139, 133, 10
CONTROL "&Reparare ActiveDirectory (DSREPAIR)", IDC_RADIO3, "Button", BS_AUTORADIOBUTTON, 15, 139, 133, 10
CONTROL "Rețea (NET&WORK)", IDC_RADIO2, "Button", BS_AUTORADIOBUTTON, 15, 150, 133, 10
CHECKBOX "Fără interfață grafică\n(/NO&GUIBOOT)", IDC_CBX_NO_GUI_BOOT, 158, 91, 127, 17, BS_MULTILINE
CHECKBOX "&Jurnal de inițializare (/BOOTLOG)", IDC_CBX_BOOT_LOG, 158, 110, 127, 12
CHECKBOX "&Jurnal de pornire (/BOOTLOG)", IDC_CBX_BOOT_LOG, 158, 110, 127, 12
CHECKBOX "Video de &bază (/BASEVIDEO)", IDC_CBX_BASE_VIDEO, 158, 124, 127, 12
CHECKBOX "&Detalii de inițializare (/SOS)", IDC_CBX_SOS, 158, 138, 127, 12
CHECKBOX "I&nformații de pornire a SO (/SOS)", IDC_CBX_SOS, 158, 138, 127, 12
PUSHBUTTON "Opțiuni &avansate…", IDC_BTN_ADVANCED_OPTIONS, 207, 151, 78, 14
LTEXT "&Limită de timp:", IDC_STATIC, 296, 91, 32, 10
EDITTEXT IDC_TXT_BOOT_TIMEOUT, 295, 102, 33, 12, ES_RIGHT | ES_NUMBER
LTEXT "secunde", IDC_STATIC, 330, 104, 31, 10
CONTROL "Fă toate s&etările de inițializare permanente", 292,
CONTROL "Facere a tuturor s&etărilor de pornire permanente", 292,
"Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49
PUSHBUTTON "Șt&erge", IDC_BTN_DELETE, 295, 68, 66, 14
PUSHBUTTON "Ș&tergere", IDC_BTN_DELETE, 295, 68, 66, 14
END
IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175
@ -99,11 +99,11 @@ CAPTION "Servicii"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129
PUSHBUTTON "A&ctivează toate", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14
PUSHBUTTON "D&ezactivează toate", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14
CONTROL "Asc&unde toate serviciile %s", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS,
PUSHBUTTON "&Activare totală", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14
PUSHBUTTON "&Dezactivare totală", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14
CONTROL "A&scundere a tuturor serviciilor %s", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS,
"Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12
LTEXT "Rețineți că unele servicii %s securizate nu pot fi dezactivate.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17
LTEXT "Rețineți că este posibil ca unele servicii %s securizate să nu fie dezactivate.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17
END
IDD_STARTUP_PAGE DIALOGEX 0, 0, 362, 175
@ -112,8 +112,8 @@ FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "List3", IDC_STARTUP_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL |
LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148
PUSHBUTTON "A&ctivează toate", IDC_BTN_STARTUP_ACTIVATE, 203, 155, 76, 14
PUSHBUTTON "D&ezactivează toate", IDC_BTN_STARTUP_DEACTIVATE, 285, 155, 76, 14
PUSHBUTTON "&Activare totală", IDC_BTN_STARTUP_ACTIVATE, 203, 155, 76, 14
PUSHBUTTON &Dezactivare totală", IDC_BTN_STARTUP_DEACTIVATE, 285, 155, 76, 14
END
IDD_TOOLS_PAGE DIALOGEX 0, 0, 366, 175
@ -123,28 +123,28 @@ FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "List1", IDC_TOOLS_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 5, 5, 356, 118
EDITTEXT IDC_TOOLS_CMDLINE, 5, 139, 356, 14, ES_READONLY
PUSHBUTTON "&Lansează", IDC_BTN_RUN, 311, 156, 50, 14
PUSHBUTTON "&Lansare", IDC_BTN_RUN, 311, 156, 50, 14
CONTROL "&Opțiuni avansate", IDC_CBX_TOOLS_ADVOPT, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 134, 12
LTEXT "&Comandă selectată:", IDC_STATIC, 5, 127, 128, 10
END
IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Extragere fișiere de la o instalație sursă"
CAPTION "Extragere a fișierelor dintr-o sursă de instalare"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Specificați fișierele pe care doriți să le extrageți, locația sursei cu fișierele de instalare, și locația destinației.", IDC_STATIC, 7, 7, 339, 17
LTEXT "Fișierele pentru e&xtragere:", IDC_STATIC, 7, 34, 93, 10
LTEXT "&Fișiere de restaurat:", IDC_STATIC, 7, 34, 93, 10
EDITTEXT IDC_TXT_FILE_TO_RESTORE, 103, 32, 158, 12, ES_AUTOHSCROLL
PUSHBUTTON "Spe&cificare…", IDC_BTN_BROWSE_ALL_FILES, 264, 30, 82, 14
LTEXT "E&xtrage din:", IDC_STATIC, 7, 55, 93, 10
PUSHBUTTON "&Specificare fișiere…", IDC_BTN_BROWSE_ALL_FILES, 264, 30, 82, 14
LTEXT "&Extrage din:", IDC_STATIC, 7, 55, 93, 10
COMBOBOX IDC_DRP_CAB_FILE, 103, 53, 158, 56, CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "Specific&are…", IDC_BTN_BROWSE_CAB_FILES, 264, 51, 82, 14
LTEXT "E&xtrage în:", IDC_STATIC, 7, 76, 93, 10
PUSHBUTTON "S&pecificare din…", IDC_BTN_BROWSE_CAB_FILES, 264, 51, 82, 14
LTEXT "S&alvare fișiere în:", IDC_STATIC, 7, 76, 93, 10
COMBOBOX IDC_DRP_DEST_DIR, 103, 74, 158, 42, CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "Specifica&re…", IDC_BTN_BROWSE_DIRS, 264, 72, 82, 14
DEFPUSHBUTTON "&Extrage", IDOK, 179, 96, 82, 14
PUSHBUTTON "A&nulează", IDCANCEL, 264, 96, 82, 14
PUSHBUTTON "Specifica&re în…", IDC_BTN_BROWSE_DIRS, 264, 72, 82, 14
DEFPUSHBUTTON "&Extragere", IDOK, 179, 96, 82, 14
PUSHBUTTON "Revocare", IDCANCEL, 264, 96, 82, 14
END
IDD_FIND_DIALOG DIALOGEX 30, 73, 236, 75
@ -152,17 +152,17 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Găsire"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "&Găsește:", IDC_STATIC, 4, 8, 42, 10, NOT WS_GROUP
LTEXT "&Găsire:", IDC_STATIC, 4, 8, 42, 10, NOT WS_GROUP
EDITTEXT IDC_TXT_FIND_TEXT, 47, 7, 128, 12, ES_AUTOHSCROLL | WS_GROUP
CONTROL "&Doar pentru întreg cuvântul", IDC_CBX_FIND_WHOLE_WORD_ONLY,
CONTROL "&Potrivire doar a cuvântului întreg", IDC_CBX_FIND_WHOLE_WORD_ONLY,
"Button", BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP, 4, 26, 100, 12
CONTROL "Distinge &MAJ/min", IDC_CBX_FIND_MATCH_CASE, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 4, 42, 100, 12
CONTROL "&Potrivire majuscule", IDC_CBX_FIND_MATCH_CASE, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 4, 42, 100, 12
GROUPBOX "Direcție", IDC_STATIC, 107, 26, 68, 28
CONTROL "S&us", IDC_RB_FIND_UP, "Button", BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP, 111, 38, 28, 12
CONTROL "J&os", IDC_RB_FIND_DOWN, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 143, 38, 28, 12
DEFPUSHBUTTON "Găsește &următorul", IDOK, 182, 5, 50, 14, WS_GROUP
PUSHBUTTON "A&nulează", IDCANCEL, 182, 23, 50, 14, WS_GROUP
CONTROL "&Caută de la început (Direcție: Sus) sau sfârșit (Direcție: Jos)", IDC_CBX_FIND_FROM_BEGINNING,
CONTROL "&Sus", IDC_RB_FIND_UP, "Button", BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP, 111, 38, 28, 12
CONTROL "&Jos", IDC_RB_FIND_DOWN, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 143, 38, 28, 12
DEFPUSHBUTTON "Găsire &următorul", IDOK, 182, 5, 50, 14, WS_GROUP
PUSHBUTTON "Revocare", IDCANCEL, 182, 23, 50, 14, WS_GROUP
CONTROL "&Căutare de la început (Direcție: Jos) sau de la sfârșit (Direcție: Sus)", IDC_CBX_FIND_FROM_BEGINNING,
"Button", BS_AUTOCHECKBOX | WS_TABSTOP, 4, 58, 231, 12
END
@ -187,25 +187,25 @@ BEGIN
CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10
EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT
CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11
PUSHBUTTON "Con&firmă", IDOK, 20, 160, 50, 12
PUSHBUTTON "A&nulează", IDCANCEL, 100, 160, 50, 12
PUSHBUTTON "OK", IDOK, 20, 160, 50, 12
PUSHBUTTON "Revocare", IDCANCEL, 100, 160, 50, 12
END
IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Programul configurator de sistem" // "Program de configurare sistem"
CAPTION "Programul de configurare a sistemului" // "Program de configurare sistem"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "Î&nchide", IDOK, 180, 41, 50, 14
LTEXT "Serviciile esențiale nu pot fi dezactivate. Făcând astfel poate împiedica execuția %s.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28
CONTROL "N&u doresc recurența acestui mesaj", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE,
DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14
LTEXT "Serviciile esențiale nu pot fi dezactivate. Acest lucru ar putea împiedica rularea %s pe computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28
CONTROL "&Nu se mai afişează acest mesaj", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE,
"Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13
END
STRINGTABLE
BEGIN
IDS_MSCONFIG "Programul configurator de sistem"
IDS_MSCONFIG_2 "Configurator de sistem"
IDS_MSCONFIG "Programul de configurare a sistemului"
IDS_MSCONFIG_2 "Configurarea sistemului"
IDS_ABOUT "&Despre…\tShift+F1"
END
@ -218,13 +218,13 @@ END
STRINGTABLE
BEGIN
IDS_TAB_STARTUP "Autolansate"
IDS_TAB_STARTUP "Pornire"
END
STRINGTABLE
BEGIN
IDS_SERVICES_COLUMN_SERVICE "Servicii"
IDS_SERVICES_COLUMN_REQ "De bază"
IDS_SERVICES_COLUMN_REQ "Necesare"
IDS_SERVICES_COLUMN_VENDOR "Furnizor"
IDS_SERVICES_COLUMN_STATUS "Stare"
IDS_SERVICES_COLUMN_DATEDISABLED "Dată dezactivată"
@ -232,7 +232,7 @@ END
STRINGTABLE
BEGIN
IDS_TOOLS_COLUMN_NAME "Nume instrument"
IDS_TOOLS_COLUMN_NAME "Numele instrumentului"
IDS_TOOLS_COLUMN_DESCR "Descriere"
IDS_TOOLS_COLUMN_STANDARD "Standard"
IDS_STARTUP_COLUMN_ELEMENT "Element"
@ -242,6 +242,6 @@ END
STRINGTABLE
BEGIN
IDS_SERVICES_STATUS_RUNNING "Pornit"
IDS_SERVICES_STATUS_RUNNING "Rulează"
IDS_SERVICES_STATUS_STOPPED "Oprit"
END

View file

@ -717,7 +717,7 @@ CommonWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
/*
* Ehh yes, we have to deal with a "dialog proc", which is quite different from a "window proc":
*
* (excerpt from: MSDN library http://msdn.microsoft.com/en-us/library/ms645469(VS.85).aspx)
* (excerpt from: MSDN library https://learn.microsoft.com/en-us/windows/win32/api/winuser/nc-winuser-dlgproc)
*
* Return Value
* ============

View file

@ -155,7 +155,7 @@ RunCommand(IN LPCWSTR lpszCommand,
//////////////////// The following comes from MSDN samples ///////////////////
// https://msdn.microsoft.com/en-us/library/windows/desktop/dd162826(v=vs.85).aspx
// https://learn.microsoft.com/en-us/windows/win32/gdi/positioning-objects-on-a-multiple-display-setup
//
//

View file

@ -58,7 +58,7 @@ RunCommand(IN LPCWSTR lpszCommand,
//////////////////// The following comes from MSDN samples ///////////////////
// https://msdn.microsoft.com/en-us/library/windows/desktop/dd162826(v=vs.85).aspx
// https://learn.microsoft.com/en-us/windows/win32/gdi/positioning-objects-on-a-multiple-display-setup
//
//

View file

@ -908,7 +908,7 @@ ApplyParameterStringsToMessage(
{
/*
* This code is heavily adapted from the MSDN example:
* https://msdn.microsoft.com/en-us/library/windows/desktop/bb427356.aspx
* https://learn.microsoft.com/en-us/windows/win32/eventlog/querying-for-event-source-messages
* with bugs removed.
*/
@ -1936,7 +1936,7 @@ FilterByString(IN PCWSTR FilterString, // This is a multi-string
pStr = FilterString;
while (*pStr)
{
if (wcsicmp(pStr, String) == 0)
if (_wcsicmp(pStr, String) == 0)
{
/* We have a match, break the loop */
break;
@ -2955,7 +2955,7 @@ BuildLogListAndFilterList(IN LPCWSTR lpComputerName)
for (lpcName = 0; lpcName < ARRAYSIZE(SystemLogs); ++lpcName)
{
/* Check whether the log name is part of the system logs */
if (wcsicmp(LogName, SystemLogs[lpcName]) == 0)
if (_wcsicmp(LogName, SystemLogs[lpcName]) == 0)
{
hRootNode = htiSystemLogs;
break;
@ -2967,7 +2967,7 @@ BuildLogListAndFilterList(IN LPCWSTR lpComputerName)
2, 3, (LPARAM)EventLogFilter);
/* Try to get the default event log: "Application" */
if ((hItemDefault == NULL) && (wcsicmp(LogName, SystemLogs[0]) == 0))
if ((hItemDefault == NULL) && (_wcsicmp(LogName, SystemLogs[0]) == 0))
{
hItemDefault = hItem;
}

View file

@ -751,9 +751,9 @@ InitDetailsDlgCtrl(HWND hDlg, PDETAILDATA pData)
/*
* Activate automatic URL recognition by the RichEdit control. For more information, see:
* https://blogs.msdn.microsoft.com/murrays/2009/08/31/automatic-richedit-hyperlinks/
* https://blogs.msdn.microsoft.com/murrays/2009/09/24/richedit-friendly-name-hyperlinks/
* https://msdn.microsoft.com/en-us/library/windows/desktop/bb787991(v=vs.85).aspx
* https://learn.microsoft.com/en-us/archive/blogs/murrays/automatic-richedit-hyperlinks
* https://learn.microsoft.com/en-us/archive/blogs/murrays/richedit-friendly-name-hyperlinks
* https://learn.microsoft.com/en-us/windows/win32/controls/em-autourldetect
*/
SendDlgItemMessageW(hDlg, IDC_EVENTTEXTEDIT, EM_AUTOURLDETECT, AURL_ENABLEURL /* | AURL_ENABLEEAURLS */, 0);

View file

@ -14,21 +14,21 @@ BEGIN
POPUP "&Jurnal"
BEGIN
MENUITEM "&Deschidere…", IDM_OPEN_EVENTLOG
MENUITEM "&Salvare jurnal de evenimente ca…", IDM_SAVE_EVENTLOG//FIXME: accelerator collision &S
MENUITEM "&Salvare a jurnalului de evenimente ca…", IDM_SAVE_EVENTLOG
MENUITEM "Î&nchidere", IDM_CLOSE_EVENTLOG
MENUITEM SEPARATOR
MENUITEM "Înlăt&urare a tuturor evenimentelor", IDM_CLEAR_EVENTS
MENUITEM "&Redenumire\tF2", IDM_RENAME_EVENTLOG
MENUITEM "&Setări pentru jurnal…", IDM_EVENTLOG_SETTINGS//FIXME: accelerator collision &S
MENUITEM "Se&tări pentru jurnal…", IDM_EVENTLOG_SETTINGS
MENUITEM SEPARATOR
MENUITEM "I&eșire", IDM_EXIT
END
POPUP "&Afișare"
BEGIN
MENUITEM "După vârstă &crescător", IDM_LIST_NEWEST
MENUITEM "După vârstă &descrescător", IDM_LIST_OLDEST//FIXME: accelerator collision &D
MENUITEM "Cel mai &nou primul", IDM_LIST_NEWEST
MENUITEM "Cel mai &vechi primul", IDM_LIST_OLDEST
MENUITEM SEPARATOR
MENUITEM "&Detalii…\tEnter", IDM_EVENT_DETAILS//FIXME: accelerator collision &D
MENUITEM "&Detalii…\tEnter", IDM_EVENT_DETAILS
MENUITEM SEPARATOR
MENUITEM "Împ&rospătare\tF5", IDM_REFRESH
END
@ -41,7 +41,7 @@ BEGIN
END
POPUP "Aj&utor"
BEGIN
MENUITEM "&Manual…", IDM_HELP
MENUITEM "Aju&tor", IDM_HELP
MENUITEM SEPARATOR
MENUITEM "&Despre…", IDM_ABOUT
END
@ -51,12 +51,12 @@ IDM_EVENTWR_CTX MENU
BEGIN
POPUP ""
BEGIN
MENUITEM "&Deschidere jurnalul de evenimente...", IDM_OPEN_EVENTLOG
MENUITEM "Salv&are jurnal de evenimente ca...", IDM_SAVE_EVENTLOG
MENUITEM "&Deschidere jurnalul de evenimente", IDM_OPEN_EVENTLOG
MENUITEM "Salv&are a jurnalului de evenimente ca…", IDM_SAVE_EVENTLOG
MENUITEM SEPARATOR
MENUITEM "Șter&gere toate evenimentele", IDM_CLEAR_EVENTS
MENUITEM "Șter&gere a tuturor evenimentelor", IDM_CLEAR_EVENTS
MENUITEM "&Redenumire\tF2", IDM_RENAME_EVENTLOG
MENUITEM "Setări de &jurnal...", IDM_EVENTLOG_SETTINGS
MENUITEM "Setări ale &jurnalului…", IDM_EVENTLOG_SETTINGS
END
END
@ -71,12 +71,12 @@ END
IDD_EVENTDETAILS_DLG DIALOGEX 0, 0, 266, 240
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_THICKFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_CONTEXTHELP
CAPTION "Detalii eveniment"
CAPTION "Detalii despre eveniment"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "EvtDetailsCtrl", IDC_STATIC, 0, 0, 266, 215
PUSHBUTTON "&Manual…", IDHELP, 8, 220, 50, 14
DEFPUSHBUTTON "Î&nchide", IDOK, 208, 220, 50, 14
PUSHBUTTON "&Ajutor", IDHELP, 8, 220, 50, 14
DEFPUSHBUTTON "Î&nchidere", IDOK, 208, 220, 50, 14
END
IDD_EVENTDETAILS_CTRL DIALOGEX 0, 0, 266, 215
@ -115,79 +115,79 @@ END
IDD_LOGPROPERTIES_GENERAL DIALOGEX 0, 0, 252, 234
STYLE DS_SHELLFONT | WS_POPUP | WS_CAPTION
CAPTION "Generale"
CAPTION "General"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "N&ume afișat:", IDC_STATIC, 7, 9, 60, 8
LTEXT "&Nume afișat:", IDC_STATIC, 7, 9, 60, 8
EDITTEXT IDC_DISPLAYNAME, 67, 7, 178, 12, ES_LEFT | ES_AUTOHSCROLL | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP
LTEXT "Nume de ju&rnal:", IDC_STATIC, 7, 25, 60, 8
LTEXT "Numele &jurnalului:", IDC_STATIC, 7, 25, 60, 8
EDITTEXT IDC_LOGNAME, 67, 23, 178, 12, ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP
LTEXT "Fiși&er de jurnal:", IDC_STATIC, 7, 41, 60, 8
LTEXT "&Fișier de jurnal:", IDC_STATIC, 7, 41, 60, 8
EDITTEXT IDC_LOGFILE, 67, 39, 178, 12, ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP
// The following 4 IDC_STATIC shall have accels in ReactOS, although MS doesn't have accels for them.
// Translation note: First fill out ALL accels that MS has in this dialog for your language,
// and only then as a final step use some remaining unused letters for those 4 controls!
LTEXT "Dimen&siune:", IDC_STATIC, 7, 57, 60, 8
LTEXT "&Dimensiune:", IDC_STATIC, 7, 57, 60, 8
EDITTEXT IDC_SIZE_LABEL, 67, 57, 178, 12, ES_LEFT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP | ES_AUTOHSCROLL
LTEXT "Crea&t:", IDC_STATIC, 7, 69, 60, 8
LTEXT "&Creat:", IDC_STATIC, 7, 69, 60, 8
EDITTEXT IDC_CREATED_LABEL, 67, 69, 178, 12, ES_LEFT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP | ES_AUTOHSCROLL
LTEXT "&Modificat:", IDC_STATIC, 7, 81, 60, 8
EDITTEXT IDC_MODIFIED_LABEL, 67, 81, 178, 12, ES_LEFT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP | ES_AUTOHSCROLL
LTEXT "&Accesat:", IDC_STATIC, 7, 93, 60, 8
EDITTEXT IDC_ACCESSED_LABEL, 67, 93, 178, 12, ES_LEFT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP | ES_AUTOHSCROLL
GROUPBOX "Dimensiune jurnal", IDC_STATIC, 7, 106, 238, 99
LTEXT "Dimensiune ma&ximă pentru jurnal:", IDC_STATIC, 17, 122, 58, 8
GROUPBOX "Dimensiunea jurnalului", IDC_STATIC, 7, 106, 238, 99
LTEXT "Dimensiune ma&ximă a jurnalului:", IDC_STATIC, 17, 122, 58, 8
EDITTEXT IDC_EDIT_MAXLOGSIZE, 80, 119, 40, 14, ES_LEFT | ES_NUMBER | WS_GROUP
CONTROL "", IDC_UPDOWN_MAXLOGSIZE, UPDOWN_CLASS, UDS_SETBUDDYINT | UDS_NOTHOUSANDS | UDS_ALIGNRIGHT |
UDS_AUTOBUDDY | UDS_ARROWKEYS | WS_GROUP, 120, 119, 10, 14
LTEXT "Kio", IDC_STATIC, 130, 122, 20, 8
LTEXT "KB", IDC_STATIC, 130, 122, 20, 8
LTEXT "Când dimensiunea maximă este atinsă:", IDC_STATIC, 17, 140, 219, 8
AUTORADIOBUTTON "Suprascrie evenimentele cân&d este necesar", IDC_OVERWRITE_AS_NEEDED, 17, 155, 219, 10, WS_GROUP | WS_TABSTOP
AUTORADIOBUTTON "Suprascrie evenimentele mai &vechi de", IDC_OVERWRITE_OLDER_THAN, 17, 168, 155, 10
AUTORADIOBUTTON "Inter&zice suprascrierea\n(gestiune manuală de jurnal)", IDC_NO_OVERWRITE, 17, 180, 143, 20, BS_MULTILINE | WS_TABSTOP
AUTORADIOBUTTON "&Suprascriere a evenimentelor când este necesar", IDC_OVERWRITE_AS_NEEDED, 17, 155, 219, 10, WS_GROUP | WS_TABSTOP
AUTORADIOBUTTON "Suprascriere a evenimentelor mai &vechi de", IDC_OVERWRITE_OLDER_THAN, 17, 168, 155, 10
AUTORADIOBUTTON "Nu se suprascriu evenimentele\n(&golire manuală a jurnalului)", IDC_NO_OVERWRITE, 17, 180, 143, 20, BS_MULTILINE | WS_TABSTOP
EDITTEXT IDC_EDIT_EVENTS_AGE, 175, 165, 35, 14, ES_LEFT | ES_NUMBER | WS_GROUP
CONTROL "", IDC_UPDOWN_EVENTS_AGE, UPDOWN_CLASS, UDS_SETBUDDYINT | UDS_ALIGNRIGHT |
UDS_AUTOBUDDY | UDS_ARROWKEYS, 104, 165, 10, 14
LTEXT "zile", IDC_STATIC, 215, 168, 20, 8
PUSHBUTTON "&Opțiuni implicite", IDC_RESTOREDEFAULTS, 166, 183, 70, 14
AUTOCHECKBOX "Conexiune de &bandă limitată", IDC_LOW_SPEED_CONNECTION, 7, 217, 167, 10
PUSHBUTTON "&Restaurare implicite", IDC_RESTOREDEFAULTS, 166, 183, 70, 14
AUTOCHECKBOX "&Folosind o conexiune de viteză mică", IDC_LOW_SPEED_CONNECTION, 7, 217, 167, 10
PUSHBUTTON "&Curăță jurnal", ID_CLEARLOG, 195, 213, 50, 14
END
STRINGTABLE
BEGIN
IDS_COPYRIGHT "Drept de autor (C) 2007 Marc Piulachs (marc.piulachs@codexchange.net)"
IDS_APP_TITLE "Observator de evenimente"
IDS_APP_TITLE "Vizualizator de evenimente"
IDS_APP_TITLE_EX "%s - %s autentificat pe \\\\"
IDS_STATUS_MSG "%s are %lu (de) eveniment(e) (afișate: %lu)"
IDS_LOADING_WAIT "Jurnal de evenimente în încărcare. Așteptați…"
IDS_NO_ITEMS "Nu există elemente de afișat." // "No events in this log."
IDS_LOADING_WAIT "Se încarcă jurnalele de evenimente. Așteptați…"
IDS_NO_ITEMS "Nu există elemente de afișat în această vizualizare." // "No events in this log."
IDS_EVENTLOG_SYSTEM "Jurnale de sistem"
IDS_EVENTLOG_APP "Jurnale de aplicație"
IDS_EVENTLOG_APP "Jurnale de aplicații"
IDS_EVENTLOG_USER "Jurnale de utilizator"
IDS_SAVE_FILTER "Jurnal de evenimente (*.evt)\0*.evt\0"
IDS_CLEAREVENTS_MSG "Doriți să salvați acest jurnal de evenimente înainte de a-l închide?"
IDS_RESTOREDEFAULTS "Doriți să restaurați toate setările pentru acest jurnal la valorile lor implicite?"
IDS_EVENTSTRINGIDNOTFOUND "Descrierea evenimentului cu ID-ul ( %lu ) în sursa ( %s ) nu a fost găsită. Este posibil ca în calculatorul local să nu existe informațiile de registru necesare sau fișierele dll de mesaje să afișeze mesaje de la un calculator din rețea.\n\nInformații aferente evenimentului:\n\n"
IDS_RESTOREDEFAULTS "Doriți să restabiliți toate setările pentru acest jurnal la valorile lor implicite?"
IDS_EVENTSTRINGIDNOTFOUND "Imposibil de găsit descrierea evenimentului cu ID-ul ( %lu ) în sursa ( %s ). Este posibil ca computerul local să nu aibă informațiile de registru necesare sau fișierele DLL de mesaje pentru a afișa mesaje de la un computer la distanță.\n\nUrmătoarele informații fac parte din eveniment:\n\n"
END
STRINGTABLE
BEGIN
/* Please note that explicit TAB characters '\t' are used to fix the alignment of the message in the MessageBox */
IDS_USAGE "Inspector de Evenimente ReactOS\n\
IDS_USAGE "Vizualizatorul de evenimente ReactOS\n\
\n\
EventVwr [nume calculator] [/L:<fișier jurnal de evenimente>] [/?]\n\
EventVwr [numele computerului] [/L:<fișier de jurnal de evenimente>] [/?]\n\
\n\
""nume calculator"" : Specifică calculatorul la distanță de la care\n\
\tvor fi preluate evenimentele afișate. Dacă nu e furnizat un\n\
\tnume de calculator, va fi utilizat calculatorul local.\n\
""numele computerului"" : Specifică computerul de la distanță unde să se conecteze\n\
\tpentru a prelua evenimentele de afișat. Dacă nu este specificat niciun nume,\n\
\tcomputerul local este folosit.\n\
\n\
/L:<fișier jurnal de evenimente> : Specifică deschiderea unui fișier.\n\
/L:<fișier de jurnal de evenimente> : Specifică deschiderea unui fișier.\n\
\tSunt acceptate doar fișierele în format .evt (NT ≤ 5.2)\n\
\n\
/? : Afișează acest mesaj cu informații de utilizare.\n\
"
IDS_EVENTLOGFILE "Fișier jurnal de evenimente"
IDS_EVENTLOGFILE "Fișier de jurnal de evenimente"
END
STRINGTABLE
@ -216,7 +216,7 @@ BEGIN
IDS_COLUMNCATEGORY "Categorie"
IDS_COLUMNEVENT "Eveniment"
IDS_COLUMNUSER "Utilizator"
IDS_COLUMNCOMPUTER "Calculator"
IDS_COLUMNCOMPUTER "Computer"
END
STRINGTABLE
@ -229,12 +229,12 @@ ID eveniment: %s\r\n\
Dată: %s\r\n\
Oră: %s\r\n\
Utilizator: %s\r\n\
Calculator: %s\r\n\
Computer: %s\r\n\
Descriere:\r\n%s"
END
STRINGTABLE
BEGIN
IDS_NONE "Nespecificată"
IDS_NOT_AVAILABLE "Nespecificat"
IDS_NONE "Nespecificat"
IDS_NOT_AVAILABLE "N/A"
END

View file

@ -17,17 +17,17 @@ BEGIN
MENUITEM SEPARATOR
MENUITEM "I&eșire", ID_EXIT
END
POPUP "A&cțiuni"
POPUP "&Acțiuni"
BEGIN
MENUITEM "Co&nectare la…", ID_CONNECT, GRAYED
MENUITEM SEPARATOR
MENUITEM "P&ornește", ID_START, GRAYED
MENUITEM "&Oprește", ID_STOP, GRAYED
MENUITEM "P&ornire", ID_START, GRAYED
MENUITEM "&Oprire", ID_STOP, GRAYED
MENUITEM "Într&erupe", ID_PAUSE, GRAYED
MENUITEM "R&eia", ID_RESUME, GRAYED
MENUITEM "&Repornește", ID_RESTART, GRAYED
MENUITEM "R&eluare", ID_RESUME, GRAYED
MENUITEM "&Repornire", ID_RESTART, GRAYED
MENUITEM SEPARATOR
MENUITEM "Împrospătea&ză\tF5", ID_REFRESH
MENUITEM "Î&mprospătare\tF5", ID_REFRESH
MENUITEM SEPARATOR
MENUITEM "Mo&dificare…", ID_EDIT, GRAYED
MENUITEM "&Creare…", ID_CREATE, GRAYED
@ -35,7 +35,7 @@ BEGIN
MENUITEM SEPARATOR
MENUITEM "&Proprietăți…", ID_PROP, GRAYED
END
POPUP "&Afișare"
POPUP "&Vizualizare"
BEGIN
MENUITEM "D&ale", ID_VIEW_LARGE
MENUITEM "&Pictograme", ID_VIEW_SMALL
@ -44,9 +44,9 @@ BEGIN
MENUITEM SEPARATOR
MENUITEM "Pa&rticularizare…", ID_VIEW_CUST, GRAYED
END
POPUP "Aj&utor"
POPUP "A&jutor"
BEGIN
MENUITEM "&Manual…", ID_HELP
MENUITEM "Aj&utor", ID_HELP
MENUITEM "&Despre…", ID_ABOUT
END
END
@ -55,20 +55,20 @@ IDR_POPUP MENU
BEGIN
POPUP "popup"
BEGIN
MENUITEM "P&ornește", ID_START, GRAYED
MENUITEM "&Oprește", ID_STOP, GRAYED
MENUITEM "Într&erupe", ID_PAUSE, GRAYED
MENUITEM "R&eia", ID_RESUME, GRAYED
MENUITEM "&Repornește", ID_RESTART, GRAYED
MENUITEM "P&ornire", ID_START, GRAYED
MENUITEM "&Oprire", ID_STOP, GRAYED
MENUITEM "Într&erupere", ID_PAUSE, GRAYED
MENUITEM "R&eluare", ID_RESUME, GRAYED
MENUITEM "&Repornire", ID_RESTART, GRAYED
MENUITEM SEPARATOR
MENUITEM "Împrospătea&ză", ID_REFRESH
MENUITEM "Î&mprospare", ID_REFRESH
MENUITEM SEPARATOR
MENUITEM "Mo&dificare…", ID_EDIT, GRAYED
MENUITEM "Elimin&are…", ID_DELETE, GRAYED
MENUITEM SEPARATOR
MENUITEM "&Proprietăți…", ID_PROP, GRAYED
MENUITEM SEPARATOR
MENUITEM "&Manual…", ID_HELP
MENUITEM "Aj&utor", ID_HELP
END
END
@ -78,7 +78,7 @@ BEGIN
END
IDD_DLG_GENERAL DIALOGEX 6, 6, 253, 232
CAPTION "Generale"
CAPTION "General"
FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_GROUP | WS_TABSTOP
BEGIN
@ -87,21 +87,21 @@ BEGIN
EDITTEXT IDC_DESCRIPTION, 70, 46, 176, 24, WS_CHILD | WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_MULTILINE | ES_READONLY
EDITTEXT IDC_EXEPATH, 6, 86, 240, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP | ES_READONLY
COMBOBOX IDC_START_TYPE, 70, 107, 176, 40, WS_CHILD | WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST
PUSHBUTTON "P&ornește", IDC_START, 6, 155, 54, 15, WS_DISABLED
PUSHBUTTON "&Oprește", IDC_STOP, 68, 155, 54, 15, WS_DISABLED
PUSHBUTTON "Într&erupe", IDC_PAUSE, 130, 155, 54, 15, WS_DISABLED
PUSHBUTTON "R&eia", IDC_RESUME, 192, 155, 54, 15, WS_DISABLED
PUSHBUTTON "&Pornire", IDC_START, 6, 155, 54, 15, WS_DISABLED
PUSHBUTTON "&Oprire", IDC_STOP, 68, 155, 54, 15, WS_DISABLED
PUSHBUTTON "Î&ntrerupere", IDC_PAUSE, 130, 155, 54, 15, WS_DISABLED
PUSHBUTTON "&Reluare", IDC_RESUME, 192, 155, 54, 15, WS_DISABLED
LTEXT "Nume serviciu:", IDC_STATIC, 4, 11, 53, 11
LTEXT "Nume afișat:", IDC_STATIC, 4, 29, 53, 11
LTEXT "Descriere:", IDC_STATIC, 4, 51, 53, 11
LTEXT "Cale la executabil:", IDC_STATIC, 6, 73, 82, 9
LTEXT "Tip lansare:", IDC_STATIC, 6, 108, 53, 11
LTEXT "Calea către executabil:", IDC_STATIC, 6, 73, 82, 9
LTEXT "Tipul de pornire:", IDC_STATIC, 6, 108, 53, 11
LTEXT "Stare serviciu:", IDC_STATIC, 4, 138, 53, 11
LTEXT "", IDC_SERV_STATUS, 70, 138, 176, 11, WS_CHILD | WS_VISIBLE
LTEXT "Aici pot fi specificați parametrii de pornire aplicabili lansării serviciului.", IDC_STATIC, 6, 177, 240, 15
LTEXT "Se pot specifica parametrii de pornire care se aplică atunci când se pornește serviciul de aici.", IDC_STATIC, 6, 177, 240, 15
LTEXT "Parametri de pornire:", IDC_STATIC, 6, 200, 68, 11
EDITTEXT IDC_START_PARAM, 78, 199, 168, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "Mo&dificare", IDC_EDIT, 192, 215, 54, 15, WS_DISABLED
PUSHBUTTON "&Modificare", IDC_EDIT, 192, 215, 54, 15, WS_DISABLED
END
IDD_LOGON DIALOGEX 6, 6, 253, 232
@ -112,17 +112,17 @@ BEGIN
LTEXT "Autentificat ca:", IDC_STATIC, 7, 7, 238, 8
AUTORADIOBUTTON "&Cont de sistem local", IDC_LOGON_SYSTEMACCOUNT, 7, 22, 238, 10, BS_TOP | BS_MULTILINE | WS_CHILD | WS_VISIBLE | WS_GROUP | WS_TABSTOP
AUTORADIOBUTTON "Acest c&ont:", IDC_LOGON_THISACCOUNT, 7, 52, 60, 10, BS_TOP | BS_MULTILINE | WS_CHILD | WS_VISIBLE
AUTOCHECKBOX "Per&mite serviciului să interacționeze cu aplicațiile de desktop", IDC_LOGON_INTERACTIVE, 18, 34, 227, 10, WS_CHILD | WS_VISIBLE | WS_GROUP | WS_TABSTOP | BS_TOP | BS_MULTILINE
AUTOCHECKBOX "Se per&mite serviciului să interacționeze cu aplicațiile de desktop", IDC_LOGON_INTERACTIVE, 18, 34, 227, 10, WS_CHILD | WS_VISIBLE | WS_GROUP | WS_TABSTOP | BS_TOP | BS_MULTILINE
EDITTEXT IDC_LOGON_ACCOUNTNAME, 72, 50, 103, 14, ES_LEFT | ES_AUTOHSCROLL | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_GROUP | WS_TABSTOP
PUSHBUTTON "Spe&cificare…", IDC_LOGON_SEARCH, 185, 50, 60, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
LTEXT "&Parolă:", IDC_LOGON_PW1TEXT, 18, 71, 33, 8, WS_CHILD | WS_VISIBLE | WS_DISABLED | WS_GROUP
EDITTEXT IDC_LOGON_PASSWORD1, 72, 68, 104, 14, ES_LEFT | ES_PASSWORD | ES_AUTOHSCROLL | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP
LTEXT "Confi&rmarea parolei:", IDC_LOGON_PW2TEXT, 18, 84, 47, 18, WS_CHILD | WS_VISIBLE | WS_DISABLED | WS_GROUP
LTEXT "Confi&rmare a parolei:", IDC_LOGON_PW2TEXT, 18, 84, 47, 18, WS_CHILD | WS_VISIBLE | WS_DISABLED | WS_GROUP
EDITTEXT IDC_LOGON_PASSWORD2, 72, 86, 104, 14, ES_LEFT | ES_PASSWORD | ES_AUTOHSCROLL | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP
LTEXT "Serviciul poate fi activat sau dezactivat în următoarele profile:", IDC_STATIC, 7, 114, 210, 8, WS_CHILD | WS_VISIBLE | WS_GROUP
LTEXT "Se permite serviciului să interacționeze cu desktopul", IDC_STATIC, 7, 114, 210, 8, WS_CHILD | WS_VISIBLE | WS_GROUP
CONTROL "", IDC_LOGON_HWPROFILE, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_NOSORTHEADER | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_GROUP | WS_TABSTOP, 7, 124, 238, 65
PUSHBUTTON "Acti&vează", IDC_LOGON_HWENABLE, 116, 197, 60, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_DISABLED
PUSHBUTTON "Dezacti&vează", IDC_LOGON_HWDISABLE, 185, 197, 60, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_DISABLED
PUSHBUTTON "&Activare", IDC_LOGON_HWENABLE, 116, 197, 60, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_DISABLED
PUSHBUTTON "&Dezactivare", IDC_LOGON_HWDISABLE, 185, 197, 60, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_DISABLED
END
IDD_RECOVERY DIALOGEX 6, 6, 253, 232
@ -130,27 +130,27 @@ CAPTION "Recuperare"
FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_GROUP | WS_TABSTOP
BEGIN
LTEXT "Determinați răspunsul sistemului dacă acest serviciu cade.", IDC_STATIC, 7, 7, 238, 8
LTEXT "&Prima cădere:", IDC_STATIC, 7, 24, 92, 8
LTEXT "Selectează răspunsul computerului dacă acest serviciu eșuează.", IDC_STATIC, 7, 7, 238, 8
LTEXT "&Primul eșec::", IDC_STATIC, 7, 24, 92, 8
COMBOBOX IDC_FIRST_FAILURE, 104, 22, 141, 147, WS_CHILD | WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST
LTEXT "A &doua cădere:", IDC_STATIC, 7, 41, 92, 8
LTEXT "&Al doilea eșec:", IDC_STATIC, 7, 41, 92, 8
COMBOBOX IDC_SECOND_FAILURE, 104, 39, 141, 147, WS_CHILD | WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST
LTEXT "Alt&e căderi:", IDC_STATIC, 7, 58, 92, 8
LTEXT "&Eșecuri ulterioare", IDC_STATIC, 7, 58, 92, 8
COMBOBOX IDC_SUBSEQUENT_FAILURES, 104, 56, 141, 147, WS_CHILD | WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST
LTEXT "&Repornire contor după:", IDC_STATIC, 7, 75, 72, 8
LTEXT "&Res. contor eș. după:", IDC_STATIC, 7, 75, 72, 8
EDITTEXT IDC_RESET_TIME, 104, 73, 40, 13, WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP | ES_LEFT | ES_AUTOHSCROLL | ES_NUMBER
LTEXT "zile", IDC_STATIC, 150, 75, 95, 8
LTEXT "Repornire ser&viciu după:", IDC_RESTART_TEXT1, 7, 92, 92, 8
LTEXT "Repornire a ser&viciului după:", IDC_RESTART_TEXT1, 7, 92, 92, 8
EDITTEXT IDC_RESTART_TIME, 104, 90, 40, 13, WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP | ES_LEFT | ES_AUTOHSCROLL | ES_NUMBER
LTEXT "minute", IDC_RESTART_TEXT2, 150, 92, 95, 8
GROUPBOX "Execare program", IDC_RUN_GROUPBOX, 7, 108, 238, 80
LTEXT "Pr&ogram:", IDC_RUN_TEXT1, 14, 121, 168, 8
GROUPBOX "Executare a programului", IDC_RUN_GROUPBOX, 7, 108, 238, 80
LTEXT "&Program:", IDC_RUN_TEXT1, 14, 121, 168, 8
EDITTEXT IDC_PROGRAM, 14, 131, 165, 14
PUSHBUTTON "Spe&cificare…", IDC_BROWSE_PROGRAM, 180, 131, 58, 14
PUSHBUTTON "&Specificare…", IDC_BROWSE_PROGRAM, 180, 131, 58, 14
LTEXT "Para&metrii liniei de comandă:", IDC_RUN_TEXT2, 14, 155, 108, 8
EDITTEXT IDC_PARAMETERS, 128, 152, 110, 14
AUTOCHECKBOX "&Adaugă contorul căderilor la sfârșitul liniei de comandă (/fail=%1%)", IDC_ADD_FAILCOUNT, 14, 171, 219, 10, WS_CHILD | WS_VISIBLE | WS_TABSTOP | BS_TOP | BS_MULTILINE
PUSHBUTTON "Opți&uni de repornire calculator…", IDC_RESTART_OPTIONS, 116, 197, 129, 14
AUTOCHECKBOX "Adău&gare nr. de eșecuri la sfârșit linie de comandă (/fail=%1%)", IDC_ADD_FAILCOUNT, 14, 171, 219, 10, WS_CHILD | WS_VISIBLE | WS_TABSTOP | BS_TOP | BS_MULTILINE
PUSHBUTTON "&Opțiuni de repornire a computerului…", IDC_RESTART_OPTIONS, 116, 197, 129, 14
END
IDD_DLG_DEPEND DIALOGEX 6, 6, 253, 225
@ -164,13 +164,13 @@ BEGIN
CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", WS_BORDER | WS_CHILDWINDOW |
WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES |
TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 151, 236, 68
LTEXT "Unele servicii depind de alte servicii sau modúle de sistem și de ordinea încărcării în grup. Dacă o componentă de sistem este oprită sau nu are o funcționare corespunzătoare, serviciile dependente pot fi și ele afectate.", IDC_STATIC, 8, 7, 238, 26
LTEXT "Acest serviciu depinde de următoarele componente:", IDC_STATIC, 8, 57, 236, 9
LTEXT "Unele servicii depind de alte servicii sau de module de sistem și de ordinea încărcării în grup. Dacă o componentă de sistem este oprită sau nu rulează corespunzător, serviciile dependente pot fi și ele afectate.", IDC_STATIC, 8, 7, 238, 26
LTEXT "Acest serviciu depinde de următoarele componente", IDC_STATIC, 8, 57, 236, 9
LTEXT "", IDC_DEPEND_SERVICE, 8, 38, 236, 13
END
IDD_DLG_CREATE DIALOGEX 6, 6, 225, 209
CAPTION "Creare serviciu"
CAPTION "Creare a unui serviciu"
FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_GROUP | WS_TABSTOP
BEGIN
@ -183,29 +183,29 @@ BEGIN
LTEXT "*Nume afișat:", IDC_STATIC, 12, 33, 54, 9
LTEXT "*Cale la executabil:", IDC_STATIC, 10, 51, 68, 9
LTEXT "Descriere:", IDC_STATIC, 12, 86, 44, 9
PUSHBUTTON "Con&firmă", IDOK, 126, 192, 44, 13
PUSHBUTTON "A&nulează", IDCANCEL, 176, 192, 46, 13
LTEXT "Alte opțiuni (apăsați „Manual” pentru detalii)", IDC_STATIC, 10, 151, 134, 9
PUSHBUTTON "&Manual…", ID_CREATE_HELP, 10, 192, 44, 13
PUSHBUTTON "OK", IDOK, 126, 192, 44, 13
PUSHBUTTON "Revocare", IDCANCEL, 176, 192, 46, 13
LTEXT "Opțiuni suplim. (clic pe Ajutor pt. detalii)", IDC_STATIC, 10, 151, 134, 9
PUSHBUTTON "&Ajutor", ID_CREATE_HELP, 10, 192, 44, 13
END
IDD_DLG_DELETE DIALOGEX 6, 6, 185, 148
CAPTION "Eliminare serviciu"
CAPTION "Ștergere a unui serviciu"
FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | DS_MODALFRAME
BEGIN
ICON IDI_WARNING, IDC_STATIC, 10, 8, 24, 22
LTEXT "Sigur doriți eliminarea acestui serviciu? Odată eliminat, nu va mai putea fi recuperat!", IDC_STATIC, 50, 6, 125, 25
LTEXT "Nume serviciu:", IDC_STATIC, 6, 40, 80, 9
LTEXT "Sigur doriți eliminarea acestui serviciu? Odată eliminat, acesta nu mai poate fi recuperat!", IDC_STATIC, 50, 6, 125, 25
LTEXT "Numele serviciului:", IDC_STATIC, 6, 40, 80, 9
LTEXT "", IDC_DEL_NAME, 15, 53, 160, 15
EDITTEXT IDC_DEL_DESC, 6, 73, 174, 48, WS_CHILD | WS_VISIBLE | WS_VSCROLL |
WS_EX_STATICEDGE | ES_MULTILINE | ES_READONLY
PUSHBUTTON "D&a", IDOK, 26, 129, 54, 13
DEFPUSHBUTTON "N&u", IDCANCEL, 102, 129, 54, 13
PUSHBUTTON "Da", IDOK, 26, 129, 54, 13
DEFPUSHBUTTON "Nu", IDCANCEL, 102, 129, 54, 13
END
IDD_DLG_DEPEND_STOP DIALOGEX 6, 6, 240, 148
CAPTION "Oprire servicii"
CAPTION "Oprire s altor servicii"
FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | DS_MODALFRAME
BEGIN
@ -213,8 +213,8 @@ BEGIN
LTEXT "", IDC_STOP_DEPENDS, 40, 8, 170, 25
LISTBOX IDC_STOP_DEPENDS_LB, 15, 40, 210, 70, WS_CHILD | WS_VISIBLE | WS_EX_STATICEDGE | LBS_NOSEL
LTEXT "Doriți oprirea acestor servicii?", IDC_STATIC, 15, 110, 150, 10
DEFPUSHBUTTON "D&a", IDOK, 60, 129, 54, 14
PUSHBUTTON "N&u", IDCANCEL, 120, 129, 54, 14
DEFPUSHBUTTON "Da", IDOK, 60, 129, 54, 14
PUSHBUTTON "Nu", IDCANCEL, 120, 129, 54, 14
END
IDD_DLG_HELP_OPTIONS DIALOGEX 6, 6, 200, 150
@ -223,18 +223,18 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | DS_MODALFRAME
BEGIN
LTEXT "", IDC_CREATE_HELP, 6, 5, 200, 150
PUSHBUTTON "Î&nchide", IDOK, 75, 130, 44, 13
PUSHBUTTON "OK", IDOK, 75, 130, 44, 13
END
IDD_DLG_PROGRESS DIALOGEX 6, 6, 255, 89
CAPTION "Control servicii"
CAPTION "Controlul serviciilor"
FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | WS_VISIBLE | DS_MODALFRAME
BEGIN
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
LTEXT "", IDC_SERVCON_INFO, 8, 5, 236, 11
LTEXT "", IDC_SERVCON_NAME, 8, 25, 66, 11
PUSHBUTTON "Î&nchide", IDOK, 100, 70, 54, 13
PUSHBUTTON "Î&nchidere", IDOK, 100, 70, 54, 13
END
STRINGTABLE
@ -242,7 +242,7 @@ BEGIN
IDS_FIRSTCOLUMN "Nume"
IDS_SECONDCOLUMN "Descriere"
IDS_THIRDCOLUMN "Stare"
IDS_FOURTHCOLUMN "Tip lansare"
IDS_FOURTHCOLUMN "Tip de pornire"
IDS_FITHCOLUMN "Autentificare ca"
END
@ -250,15 +250,15 @@ STRINGTABLE
BEGIN
IDS_SERVICES_STARTED "Pornit"
IDS_SERVICES_STOPPED "Oprit"
IDS_SERVICES_AUTO "Automată"
IDS_SERVICES_MAN "Manuală"
IDS_SERVICES_DIS "Inactivă"
IDS_SERVICES_AUTO "Automat"
IDS_SERVICES_MAN "Manual"
IDS_SERVICES_DIS "Dezactivat"
END
STRINGTABLE
BEGIN
IDS_NUM_SERVICES "Nr. servicii: %d"
IDS_STOP_DEPENDS "Dacă %s se oprește aceste procese se vor opri de asemenea."
IDS_STOP_DEPENDS "Când %s se oprește, aceste alte servicii se vor opri și ele"
IDS_NO_DEPENDS "<Fără dependențe>"
END
@ -266,30 +266,30 @@ STRINGTABLE
BEGIN
IDS_TOOLTIP_PROP "Proprietăți"
IDS_TOOLTIP_REFRESH "Împrospătare"
IDS_TOOLTIP_EXPORT "Listă de export"
IDS_TOOLTIP_CREATE "Creează un serviciu nou"
IDS_TOOLTIP_DELETE "Elimină un serviciu existent"
IDS_TOOLTIP_START "Pornește serviciul"
IDS_TOOLTIP_STOP "Oprește serviciul"
IDS_TOOLTIP_PAUSE "Întrerupe serviciul"
IDS_TOOLTIP_RESTART "Repornește serviciul"
IDS_TOOLTIP_EXPORT "Exportare a listei"
IDS_TOOLTIP_CREATE "Creare a unui serviciu nou"
IDS_TOOLTIP_DELETE "Eliminare a unui serviciu existent"
IDS_TOOLTIP_START "Pornire a serviciului"
IDS_TOOLTIP_STOP "Oprire a serviciului"
IDS_TOOLTIP_PAUSE "Întrerupere a serviciului"
IDS_TOOLTIP_RESTART "Repornire a serviciului"
END
STRINGTABLE
BEGIN
IDS_PROGRESS_INFO_START "ReactOS încearcă pornirea serviciului"
IDS_PROGRESS_INFO_STOP "ReactOS încearcă oprirea serviciului"
IDS_PROGRESS_INFO_PAUSE "ReactOS încearcă întreruperea serviciului"
IDS_PROGRESS_INFO_RESUME "ReactOS încearcă reluarea serviciului"
IDS_CREATE_SUCCESS "Serviciu creat cu succes"
IDS_DELETE_SUCCESS "Serviciu eliminat cu succes"
IDS_CREATE_REQ "Câmpurile cu\nasterisc sunt obligatorii"
IDS_DELETE_STOP "Este necesară oprirea manuală a serviciului înainte de a-l eliminăra!"
IDS_PROGRESS_INFO_START "ReactOS încearcă pornească următorul serviciu"
IDS_PROGRESS_INFO_STOP "ReactOS încearcă să oprească următorul serviciu"
IDS_PROGRESS_INFO_PAUSE "ReactOS încearcă să întrerupă următorul serviciu"
IDS_PROGRESS_INFO_RESUME "ReactOS încearcă să reia următorului serviciu"
IDS_CREATE_SUCCESS "Serviciul a fost creat cu succes"
IDS_DELETE_SUCCESS "Serviciul a fost eliminat cu succes"
IDS_CREATE_REQ "Câmpurile marcate cu un\nasterisc sunt obligatorii"
IDS_DELETE_STOP "Trebuie oprit manual serviciul înainte de a îl șterge!"
END
STRINGTABLE
BEGIN
IDS_HELP_OPTIONS "OPȚIUNI DE CREARE:\nNOTĂ: Numele opțiunii include semnul de egalitate.\n type= <own|share|interact|kernel|filesys|rec>\n (implicit = own)\n start= <boot|system|auto|demand|disabled>\n (implicit = demand)\n error= <normal|severe|critical|ignore>\n (implicit = normal)\n group= <LoadOrderGroup>\n tag= <yes|no>\n depend= <Dependencies(separate de / (simbolul „solidus”))>\n obj= <AccountName|ObjectName>\n (implicit = LocalSystem)\n password= <password>\n"
IDS_HELP_OPTIONS "OPȚIUNI DE CREARE:\nNOTĂ: Numele opțiunii include semnul egal.\n type= <own|share|interact|kernel|filesys|rec>\n (implicit = own)\n start= <boot|system|auto|demand|disabled>\n (implicit = demand)\n error= <normal|severe|critical|ignore>\n (implicit = normal)\n group= <LoadOrderGroup>\n tag= <yes|no>\n depend= <Dependencies( separate de / (bară oblică înainte))>\n obj= <AccountName|ObjectName>\n (implicit = LocalSystem)\n password= <password>\n"
END
/* Hints */
@ -297,50 +297,50 @@ STRINGTABLE
BEGIN
IDS_HINT_BLANK " "
IDS_HINT_EXPORT " Exportă lista curentă într-un fișier."
IDS_HINT_EXIT " Părăsește programul."
IDS_HINT_CONNECT " Gestionează un alt calculator."
IDS_HINT_EXIT " Iese din program."
IDS_HINT_CONNECT " Gestionează un alt computer."
IDS_HINT_START " Pornește serviciul selectat."
IDS_HINT_STOP " Oprește serviciul selectat."
IDS_HINT_PAUSE " Întrerupe serviciul selectat."
IDS_HINT_RESUME " Reia serviciul selectat."
IDS_HINT_RESTART " Oprește apoi repornește serviciul selectat."
IDS_HINT_RESTART " Oprește și pornește serviciul selectat."
IDS_HINT_REFRESH " Împrospătează lista de servicii."
IDS_HINT_EDIT " Editează proprietățile serviciului selectat."
IDS_HINT_CREATE " Creează un nou serviciu."
IDS_HINT_DELETE " Elimină serviciul selectat."
IDS_HINT_PROP " Deschide proprietățile selecției curente."
IDS_HINT_DELETE " Șterge serviciul selectat."
IDS_HINT_PROP " Deschideți foaia de proprietăți pentru selecția curentă."
IDS_HINT_LARGE " Afișează elementele folosind pictograme mari."
IDS_HINT_SMALL " Afișează elementele folosind pictograme mici."
IDS_HINT_LIST " Afișează elementele în listă."
IDS_HINT_LIST " Afișează elementul într-o listă."
IDS_HINT_DETAILS " Afișează informații despre fiecare element într-o fereastră."
IDS_HINT_CUST " Particularizează afișajul."
IDS_HINT_HELP " Afișează fereastra de ajutor."
IDS_HINT_ABOUT " Despre Gestionar de servicii ReactOS."
IDS_HINT_SYS_RESTORE " Restabilește fereastra la mărimea originală."
IDS_HINT_ABOUT " Despre Managerul de servicii ReactOS."
IDS_HINT_SYS_RESTORE " Restabilește această fereastră la dimensiunea normală."
IDS_HINT_SYS_MOVE " Mută fereastra."
IDS_HINT_SYS_SIZE " Redimensionează fereastra."
IDS_HINT_SYS_MINIMIZE " Reduce fereastra la minim."
IDS_HINT_SYS_MAXIMIZE " Mărește fereastra la maxim."
IDS_HINT_SYS_MINIMIZE " Restrânge această fereastră la o pictogramă."
IDS_HINT_SYS_MAXIMIZE " Extinde această fereastră pentru a umple acest ecran."
IDS_HINT_SYS_CLOSE " Închide fereastra."
END
/* Application title */
STRINGTABLE
BEGIN
IDS_APPNAME "Gestionar de servicii"
IDS_APPAUTHORS "Copyright (C) 2005-2007 by Ged Murphy (gedmurphy@reactos.org)"
IDS_APPNAME "Managerul de servicii ReactOS"
IDS_APPAUTHORS "Drepturi de autor (C) 2005-2007 de Ged Murphy (gedmurphy@reactos.org)"
END
STRINGTABLE
BEGIN
IDS_NO_ACTION "Nici o acțiune"
IDS_RESTART_SERVICE "Repornește serviciul"
IDS_RUN_PROGRAM "Execută un program"
IDS_RESTART_COMPUTER "Repornește calculatorul"
IDS_RESTART_SERVICE "Repornire serviciului"
IDS_RUN_PROGRAM "Executare a unui program"
IDS_RESTART_COMPUTER "Repornire a computerului"
END
STRINGTABLE
BEGIN
IDS_NOT_SAME_PASSWORD "Parolele nu sunt identice!"
IDS_NOT_SAME_PASSWORD "Parolele nu sunt aceleași!"
IDS_INVALID_PASSWORD "Introduceți o parolă validă!"
END

View file

@ -311,4 +311,4 @@ CreateStopDependsDialog(HWND hParent,
return TRUE;
return FALSE;
}
}

View file

@ -4,6 +4,7 @@
* PURPOSE: Turkish resource file
* TRANSLATORS: Copyright 2013-2016, 2019 Erdem Ersoy (eersoy93) <erdemersoy@erdemersoy.net>
* Copyright 2021-2022 Süleyman Poyraz <zaryob.dev@gmail.com>
* Copyright 2024 Mahir Gül <mahirgul@gmail.com>
*/
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
@ -269,8 +270,8 @@ BEGIN
IDS_UNDERLINE "Altı Çizgili"
IDS_VERTICAL "Düşey"
IDS_PRINTRES "%d x %d pixel/cm"
IDS_CANTPASTE "Failed to paste from the clipboard. The data format is either incorrect or not supported."
IDS_SAVEERROR "Failed to save the bitmap to file:\n\n%s"
IDS_CANTSENDMAIL "Failed to send a mail."
IDS_LOSECOLOR "The color information will be lost in this operation. Are you sure to proceed?"
IDS_CANTPASTE "Panodan yapıştırma işlemi başarısız oldu. Veri biçimi ya yanlış ya da desteklenmiyor."
IDS_SAVEERROR "Bit eşlemi dosyaya kaydedilemedi:\n\n%s"
IDS_CANTSENDMAIL "Posta gönderilemedi."
IDS_LOSECOLOR "Bu işlem sırasında renk bilgisi kaybolacaktır. Devam edeceğinizden emin misiniz?"
END

View file

@ -542,7 +542,7 @@ sec_out_mcs_data(STREAM s, uint32 selected_protocol)
out_uint8s(s, 30 - hostlen);
/* See
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wceddk40/html/cxtsksupportingremotedesktopprotocol.asp */
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wceddk40/html/cxtsksupportingremotedesktopprotocol.asp (DEAD_LINK) */
out_uint32_le(s, g_keyboard_type);
out_uint32_le(s, g_keyboard_subtype);
out_uint32_le(s, g_keyboard_functionkeys);

View file

@ -11,6 +11,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
/* UTF-8 */
#pragma code_page(65001)
#ifdef LANGUAGE_DE_DE
#include "lang/de-DE.rc"
#endif

View file

@ -70,7 +70,7 @@ cmdAccounts(
if (_wcsnicmp(argv[i], L"/forcelogoff:", 13) == 0)
{
p = &argv[i][13];
if (wcsicmp(p, L"no") == 0)
if (_wcsicmp(p, L"no") == 0)
{
Info0->usrmod0_force_logoff = TIMEQ_FOREVER;
Modified = TRUE;
@ -107,7 +107,7 @@ cmdAccounts(
{
p = &argv[i][10];
if (wcsicmp(p, L"unlimited"))
if (_wcsicmp(p, L"unlimited"))
{
Info0->usrmod0_max_passwd_age = ULONG_MAX;
Modified = TRUE;

View file

@ -322,4 +322,4 @@ done:
PrintErrorMessage(ERROR_SUCCESS);
return result;
}
}

View file

@ -310,4 +310,4 @@ cmdStatistics(
PrintErrorMessage(ERROR_SUCCESS);
return result;
}
}

View file

@ -47,7 +47,7 @@ EnumerateConnections(LPCWSTR Local)
lpCur = lpRes;
for (; dCount; dCount--)
{
if (!Local || wcsicmp(lpCur->lpLocalName, Local) == 0)
if (!Local || _wcsicmp(lpCur->lpLocalName, Local) == 0)
{
ConPrintf(StdOut, L"%s\t\t\t%s\t\t%s\n", lpCur->lpLocalName, lpCur->lpRemoteName, lpCur->lpProvider);
}
@ -135,7 +135,7 @@ cmdUse(
}
Delete = 0;
if (wcsicmp(argv[2], L"/DELETE") == 0)
if (_wcsicmp(argv[2], L"/DELETE") == 0)
{
Delete = 3;
}
@ -149,7 +149,7 @@ cmdUse(
}
}
if (wcsicmp(argv[3], L"/DELETE") == 0)
if (_wcsicmp(argv[3], L"/DELETE") == 0)
{
Delete = 2;
}

View file

@ -962,7 +962,7 @@ ParseLogonHours(
goto done;
}
if (wcsicmp(pszParams, L"all") == 0)
if (_wcsicmp(pszParams, L"all") == 0)
{
FillMemory(pLogonBitmap, UNITS_PER_WEEK / 8, 0xFF);
goto done;

View file

@ -36,8 +36,8 @@ InterpretCommand(
return FALSE;
}
if ((wcsicmp(argv[dwArgCount - 1], L"?") == 0) ||
(wcsicmp(argv[dwArgCount - 1], L"help") == 0))
if ((_wcsicmp(argv[dwArgCount - 1], L"?") == 0) ||
(_wcsicmp(argv[dwArgCount - 1], L"help") == 0))
{
dwHelpLevel = dwArgCount - 1;
}
@ -49,7 +49,7 @@ InterpretCommand(
pCommand = pContext->pCommandListHead;
while (pCommand != NULL)
{
if (wcsicmp(argv[0], pCommand->pwszCmdToken) == 0)
if (_wcsicmp(argv[0], pCommand->pwszCmdToken) == 0)
{
if (dwHelpLevel == 1)
{
@ -74,7 +74,7 @@ InterpretCommand(
pGroup = pContext->pGroupListHead;
while (pGroup != NULL)
{
if (wcsicmp(argv[0], pGroup->pwszCmdGroupToken) == 0)
if (_wcsicmp(argv[0], pGroup->pwszCmdGroupToken) == 0)
{
if (dwHelpLevel == 1)
{
@ -85,7 +85,7 @@ InterpretCommand(
pCommand = pGroup->pCommandListHead;
while (pCommand != NULL)
{
if ((dwArgCount > 1) && (wcsicmp(argv[1], pCommand->pwszCmdToken) == 0))
if ((dwArgCount > 1) && (_wcsicmp(argv[1], pCommand->pwszCmdToken) == 0))
{
if (dwHelpLevel == 2)
{
@ -120,7 +120,7 @@ InterpretCommand(
pSubContext = pContext->pSubContextHead;
while (pSubContext != NULL)
{
if (wcsicmp(argv[0], pSubContext->pszContextName) == 0)
if (_wcsicmp(argv[0], pSubContext->pszContextName) == 0)
{
pCurrentContext = pSubContext;
return TRUE;

View file

@ -212,7 +212,7 @@ MatchToken(
_In_ LPCWSTR pwszCmdToken)
{
DPRINT1("MatchToken %S %S\n", pwszUserToken, pwszCmdToken);
return (wcsicmp(pwszUserToken, pwszCmdToken) == 0) ? TRUE : FALSE;
return (_wcsicmp(pwszUserToken, pwszCmdToken) == 0) ? TRUE : FALSE;
}
DWORD

View file

@ -27,12 +27,7 @@ set_target_cpp_properties(telnet WITH_EXCEPTIONS)
if (MSVC)
# C4838: conversion from 'int' to 'SHORT' requires a narrowing conversion
# C4996: 'strnicmp': Deprecated POSIX name, Try _strnicmp instead!
target_compile_options(telnet PRIVATE /wd4838 /wd4996)
endif()
if (NOT MSVC)
target_compile_definitions(telnet PRIVATE _CRT_NONSTDC_NO_DEPRECATE)
target_compile_options(telnet PRIVATE /wd4838)
endif()
if(CMAKE_C_COMPILER_ID STREQUAL "GNU" OR CMAKE_C_COMPILER_ID STREQUAL "Clang")

View file

@ -59,8 +59,8 @@ Support for multiple screen sizes.
----------------
Since version 2.0, Console Telnet's new home page is
http://www.musc.edu/~brannanp/telnet/. You can get the latest version from
ftp://argeas.cs-net.gr/Telnet-Win32 or from the web page. Telnet is
https://web.archive.org/web/20010126035900/http://www.musc.edu/~brannanp/telnet/ . You can get the latest version from
ftp://argeas.cs-net.gr/Telnet-Win32 (DEAD_LINK) or from the web page. Telnet is
available as full project (sources included) or as binaries only. If you
would like to help to the development check the /devel directory on the ftp
site for a recent alpha version.
@ -72,7 +72,7 @@ Telnet has it's own mailing list for announcements, bug reports, support,
suggestions etc. To subscribe send e-mail to majordomo@argeas.cs-net.gr
with empty Subject, and the word subscribe in the body. List's address is
telnet-win32@argeas.cs-net.gr You can find the old archives at
http://www.cs-net.gr/lists
http://www.cs-net.gr/lists (DEAD_LINK)
If you are only interested in announcements, follow the above procedures to
subscribe to telnet-win32-announce. The development list is
@ -172,7 +172,7 @@ included to the next version.
Telnet compiles with a variety of compilers. You will need at least
Borland 4.x or newer compiler, or MSVC 2.0 or newer, or download a version
of gcc for Win32 (see http://www.musc.edu/~brannanp/telnet/gccwin32.html).
of gcc for Win32 (see https://web.archive.org/web/20010126054500/http://www.musc.edu/~brannanp/telnet/gccwin32.html).
Copy the files from the directories BORLAND or MSVC to the main directory,
change them to fit to your system, and recompile. The project comes with
IDE files and makefiles.

View file

@ -19,4 +19,4 @@ Unfortunately, all the ssh clients I've found don't work this way. You can outp
3) Get Openssh from http://www.openssh.com
4) Modify Openssh so it will compile, and get rid of all the termios stuff
Obviously this is a lot of work. If you need a good ssh client, try PuTTY from http://www.chiark.greenend.org.uk/~sgtatham/putty/. It may be possible to integrate PuTTY and Telnet, and that would certainly be easier than the above option. PuTTY is licensed under the MIT license, which seems to be compatible with the GPL. The primary advantage of integrating the two projects is that PuTTY would gain the key mappings that telnet has, and telnet would gain encryption.
Obviously this is a lot of work. If you need a good ssh client, try PuTTY from https://www.chiark.greenend.org.uk/~sgtatham/putty/ . It may be possible to integrate PuTTY and Telnet, and that would certainly be easier than the above option. PuTTY is licensed under the MIT license, which seems to be compatible with the GPL. The primary advantage of integrating the two projects is that PuTTY would gain the key mappings that telnet has, and telnet would gain encryption.

View file

@ -9,25 +9,25 @@ BEGIN
MSG_HELP "Commands may be abbreviated. Commands are:\n\ncl[ose] close current connection\nop[en] connect to a site\nq[uit] exit telnet\n"
MSG_HELP_1 "ke[ys] changes/displays keymaps (write keys to see the options)\nse[t] displays/alters configuration options\nz suspend\n? h[elp] print help information\n"
MSG_INVCMD "Invalid command. Type ? for help.\n"
MSG_ERROR "%1 failed.\n"
MSG_INFO "%1\n"
MSG_WARNING "%1\n"
MSG_TRYING "Trying %1.%2.%3.%4:%5...\n"
MSG_CONNECTED "Connected to %1. Escape key is ALT-%2.\n"
MSG_ERROR "%1!hs! failed.\n"
MSG_INFO "%1!hs!\n"
MSG_WARNING "%1!hs!\n"
MSG_TRYING "Trying %1!hs!.%2!hs!.%3!hs!.%4!hs!:%5!hs!...\n"
MSG_CONNECTED "Connected to %1!hs!. Escape key is ALT-%2!hs!.\n"
MSG_TERMBYREM "Connection terminated.\n"
MSG_KEYMAP "Loading %1 from %2.\n"
MSG_KEYMAP "Loading %1!hs! from %2!hs!.\n"
MSG_ERRKEYMAP "Error loading keymap.\n"
MSG_DUMPFILE "Writing output to file %1.\n"
MSG_CONFIG "Loading configuration options from %1.\n"
MSG_NOINI "Error loading configuration file %1.\nLoading default options.\n"
MSG_BADVAL "Warning: invalid variable %1.\n"
MSG_DUMPFILE "Writing output to file %1!hs!.\n"
MSG_CONFIG "Loading configuration options from %1!hs!.\n"
MSG_NOINI "Error loading configuration file %1!hs!.\nLoading default options.\n"
MSG_BADVAL "Warning: invalid variable %1!hs!.\n"
MSG_NOSPAWN "Unable to spawn process.\n"
MSG_RESOLVING "Looking up host: %1..."
MSG_NOSERVICE "Could not find TCP service %1.\n"
MSG_SIZEALIAS "Warning: size of alias %1 is too big, ignoring.\n"
MSG_RESOLVING "Looking up host: %1!hs!..."
MSG_NOSERVICE "Could not find TCP service %1!hs!.\n"
MSG_SIZEALIAS "Warning: size of alias %1!hs! is too big, ignoring.\n"
MSG_ERRPIPE "Error: unable to spawn process for pipe.\n"
MSG_BADUSAGE "Error: invalid usage of command.\n"
MSG_ALREADYCONNECTED "Already connected to %1.\n"
MSG_ALREADYCONNECTED "Already connected to %1!hs!.\n"
MSG_WSAEINTR "Interrupted function call.\n"
MSG_WSAEBADF "WSAEBADF\n"
MSG_WSAEACCESS "Permission denied.\n"
@ -72,25 +72,25 @@ BEGIN
MSG_WSATRY_AGAIN "Non-authoritative host not found.\n"
MSG_WSANO_RECOVERY "This is a non-recoverable error.\n"
MSG_WSANO_DATA "Valid name, no data record of requested type.\n"
MSG_KEYNOVAL "[GLOBAL]: No value for %1.\n"
MSG_KEYBADVAL "[GLOBAL]: Bad value for %1.\n"
MSG_KEYBADSTRUCT "%1: Bad structure.\n"
MSG_KEYBADCHARS "%1: Bad chars? %1 -> %3.\n"
MSG_KEYUNEXPLINE "Unexpected line ""%1"".\n"
MSG_KEYNOVAL "[GLOBAL]: No value for %1!hs!.\n"
MSG_KEYBADVAL "[GLOBAL]: Bad value for %1!hs!.\n"
MSG_KEYBADSTRUCT "%1!hs!: Bad structure.\n"
MSG_KEYBADCHARS "%1!hs!: Bad chars? %1!hs! -> %3!hs!.\n"
MSG_KEYUNEXPLINE "Unexpected line ""%1!hs!"".\n"
MSG_KEYUNEXPEOF "Unexpended end of file.\n"
MSG_KEYUNEXPTOK "Unexpected token %1.\n"
MSG_KEYUNEXPTOKIN "Unexpected token in %1.\n"
MSG_KEYUNEXPTOK "Unexpected token %1!hs!.\n"
MSG_KEYUNEXPTOKIN "Unexpected token in %1!hs!.\n"
MSG_KEYUNEXP "Unexpected end of file or token.\n"
MSG_KEYNOGLOBAL "No [GLOBAL] definition!\n"
MSG_KEYNOCONFIG "No [CONFIG %1].\n"
MSG_KEYUSECONFIG "Use configuration: %1.\n"
MSG_KEYNOSWKEY "No switch key for ""%1"".\n"
MSG_KEYNOCONFIG "No [CONFIG %1!hs!].\n"
MSG_KEYUSECONFIG "Use configuration: %1!hs!.\n"
MSG_KEYNOSWKEY "No switch key for ""%1!hs!"".\n"
MSG_KEYCANNOTDEF "You cannot define switch key for default keymap - ignored.\n"
MSG_KEYDUPSWKEY "Duplicate switching key.\n"
MSG_KEYUNKNOWNMAP "Unknown keymap %1.\n"
MSG_KEYUNKNOWNMAP "Unknown keymap %1!hs!.\n"
MSG_KEYNOCHARMAPS "No charmaps loaded.\n"
MSG_KEYNOKEYMAPS "No keymaps loaded.\n"
MSG_KEYNUMMAPS "There are %1 maps.\n"
MSG_KEYNUMMAPS "There are %1!hs! maps.\n"
MSG_KEYBADMAP "Bad keymap number - try 'keys display'\n"
MSG_KEYMAPSWITCHED "keymap switched.\n"
END

View file

@ -9,25 +9,25 @@ BEGIN
MSG_HELP "Polecenia mogą być skracane. Dostępne polecenia:\n\ncl[ose] zamknij bieżące połączenie\nop[en] połącz z witryną\nq[uit] zakończ telnet\n"
MSG_HELP_1 "ke[ys] zmienia/wyświetla mapy klawiszy (wpisz klawisze,\naby zobaczyć opcje)\nse[t] wyświetla/zmienia opcje konfiguracji\nz wstrzymaj\n? h[elp] wypisz informacje pomocy\n"
MSG_INVCMD "Nieprawidłowe polecenie. Wpisz ?, aby uzyskać pomoc.\n"
MSG_ERROR "%1 nie powiodło się.\n"
MSG_INFO "%1\n"
MSG_WARNING "%1\n"
MSG_TRYING "Podejmowanie próby %1.%2.%3.%4:%5...\n"
MSG_CONNECTED "Podłączono do %1. Klawisze wyjścia to ALT-%2.\n"
MSG_ERROR "%1!hs! nie powiodło się.\n"
MSG_INFO "%1!hs!\n"
MSG_WARNING "%1!hs!\n"
MSG_TRYING "Podejmowanie próby %1!hs!.%2!hs!.%3!hs!.%4!hs!:%5!hs!...\n"
MSG_CONNECTED "Podłączono do %1!hs!. Klawisze wyjścia to ALT-%2!hs!.\n"
MSG_TERMBYREM "Połączenie zakończone.\n"
MSG_KEYMAP "Ładowanie %1 z %2.\n"
MSG_KEYMAP "Ładowanie %1!hs! z %2!hs!.\n"
MSG_ERRKEYMAP "Błąd podczas ładowania mapy klawiszy.\n"
MSG_DUMPFILE "Zapisywanie danych wyjściowych do pliku %1.\n"
MSG_CONFIG "Ładowanie opcji konfiguracji z %1.\n"
MSG_NOINI "Błąd podczas ładowania pliku konfiguracyjnego %1.\nŁadowanie domyślnych opcji.\n"
MSG_BADVAL "Ostrzeżenie: nieprawidłowa zmienna %1.\n"
MSG_DUMPFILE "Zapisywanie danych wyjściowych do pliku %1!hs!.\n"
MSG_CONFIG "Ładowanie opcji konfiguracji z %1!hs!.\n"
MSG_NOINI "Błąd podczas ładowania pliku konfiguracyjnego %1!hs!.\nŁadowanie domyślnych opcji.\n"
MSG_BADVAL "Ostrzeżenie: nieprawidłowa zmienna %1!hs!.\n"
MSG_NOSPAWN "Nie można zduplikować procesu.\n"
MSG_RESOLVING "Wyszukiwanie hosta: %1..."
MSG_NOSERVICE "Nie odnaleziono usługi TCP %1.\n"
MSG_SIZEALIAS "Ostrzeżenie: rozmiar aliasu %1 jest zbyt duży, ignorowanie.\n"
MSG_RESOLVING "Wyszukiwanie hosta: %1!hs!..."
MSG_NOSERVICE "Nie odnaleziono usługi TCP %1!hs!.\n"
MSG_SIZEALIAS "Ostrzeżenie: rozmiar aliasu %1!hs! jest zbyt duży, ignorowanie.\n"
MSG_ERRPIPE "Błąd: nie można zduplikować procesu dla potoku.\n"
MSG_BADUSAGE "Błąd: nieprawidłowe użycie polecenia.\n"
MSG_ALREADYCONNECTED "Już połączono z %1.\n"
MSG_ALREADYCONNECTED "Już połączono z %1!hs!.\n"
MSG_WSAEINTR "Przerwano wywołanie funkcji.\n"
MSG_WSAEBADF "WSAEBADF\n"
MSG_WSAEACCESS "Odmowa uprawnień.\n"
@ -72,25 +72,25 @@ BEGIN
MSG_WSATRY_AGAIN "Nie odnaleziono nieautorytatywnego hosta.\n"
MSG_WSANO_RECOVERY "Ten błąd jest niemożliwy do naprawienia.\n"
MSG_WSANO_DATA "Nazwa jest prawidłowa, brak rekordu danych żądanego typu.\n"
MSG_KEYNOVAL "[GLOBAL]: Brak wartości dla %1.\n"
MSG_KEYBADVAL "[GLOBAL]: Zła wartość dla %1.\n"
MSG_KEYBADSTRUCT "%1: Zła struktura.\n"
MSG_KEYBADCHARS "%1: Złe znaki? %1 -> %3.\n"
MSG_KEYUNEXPLINE "Nieoczekiwany wiersz ""%1"".\n"
MSG_KEYNOVAL "[GLOBAL]: Brak wartości dla %1!hs!.\n"
MSG_KEYBADVAL "[GLOBAL]: Zła wartość dla %1!hs!.\n"
MSG_KEYBADSTRUCT "%1!hs!: Zła struktura.\n"
MSG_KEYBADCHARS "%1!hs!: Złe znaki? %1!hs! -> %3!hs!.\n"
MSG_KEYUNEXPLINE "Nieoczekiwany wiersz ""%1!hs!"".\n"
MSG_KEYUNEXPEOF "Nieoczekiwany koniec pliku.\n"
MSG_KEYUNEXPTOK "Nieoczekiwany token %1.\n"
MSG_KEYUNEXPTOKIN "Nieoczekiwany token w %1.\n"
MSG_KEYUNEXPTOK "Nieoczekiwany token %1!hs!.\n"
MSG_KEYUNEXPTOKIN "Nieoczekiwany token w %1!hs!.\n"
MSG_KEYUNEXP "Nieoczekiwany koniec pliku lub tokena.\n"
MSG_KEYNOGLOBAL "Brak definicji [GLOBAL]!\n"
MSG_KEYNOCONFIG "Brak [CONFIG %1].\n"
MSG_KEYUSECONFIG "Użyj konfiguracji: %1.\n"
MSG_KEYNOSWKEY "Brak klawisza przełączającego dla ""%1"".\n"
MSG_KEYNOCONFIG "Brak [CONFIG %1!hs!].\n"
MSG_KEYUSECONFIG "Użyj konfiguracji: %1!hs!.\n"
MSG_KEYNOSWKEY "Brak klawisza przełączającego dla ""%1!hs!"".\n"
MSG_KEYCANNOTDEF "Nie można zdefiniować klawisza przełączającego dla domyślnej mapy klawiszy - zignorowano.\n"
MSG_KEYDUPSWKEY "Duplikuj klawisz przełączający.\n"
MSG_KEYUNKNOWNMAP "Nieznana mapa klawiszy %1.\n"
MSG_KEYUNKNOWNMAP "Nieznana mapa klawiszy %1!hs!.\n"
MSG_KEYNOCHARMAPS "Nie załadowano żadnych tablic znaków.\n"
MSG_KEYNOKEYMAPS "Nie załadowano żadnych map klawiszy.\n"
MSG_KEYNUMMAPS "Istnieje %1 map.\n"
MSG_KEYNUMMAPS "Istnieje %1!hs! map.\n"
MSG_KEYBADMAP "Zły numer mapy klawiszy - sróbuj 'keys display'\n"
MSG_KEYMAPSWITCHED "mapa klawiszy przełączona.\n"
END

View file

@ -10,25 +10,25 @@ BEGIN
MSG_HELP "Comenzile pot fi abreviate. Acestea sunt:\n\ncl[ose] Închide conexiunea curentă.\nop[en] Conectează la un sit.\nq[uit] Ieșire din telnet.\n"
MSG_HELP_1 "ke[ys] Afișează/alterează configurații de taste.\nse[t] Afișează/alterează opțiunile de configurare.\nz Suspendă.\n? h[elp] Afișează informațiile de utilizare.\n"
MSG_INVCMD "Comandă nevalidă. Tastați ? pentru informații.\n"
MSG_ERROR "%1 a eșuat.\n"
MSG_INFO "%1\n"
MSG_WARNING "%1\n"
MSG_TRYING "Este încearcată %1.%2.%3.%4:%5...\n"
MSG_CONNECTED "Conectat la %1. Pentru ieșire apăsați ALT-%2.\n"
MSG_ERROR "%1!hs! a eșuat.\n"
MSG_INFO "%1!hs!\n"
MSG_WARNING "%1!hs!\n"
MSG_TRYING "Este încearcată %1!hs!.%2!hs!.%3!hs!.%4!hs!:%5!hs!...\n"
MSG_CONNECTED "Conectat la %1!hs!. Pentru ieșire apăsați ALT-%2!hs!.\n"
MSG_TERMBYREM "Conexiune încheiată.\n"
MSG_KEYMAP "Este încarcată %1 de la %2.\n"
MSG_KEYMAP "Este încarcată %1!hs! de la %2!hs!.\n"
MSG_ERRKEYMAP "Eșec la încărcarea configurației de taste.\n"
MSG_DUMPFILE "Sunt scrise informații de ieșire în fișierul %1.\n"
MSG_CONFIG "Este încarcată din %1 opțiunile de configurare.\n"
MSG_NOINI "Eroare la încărcarea fișierului de configurare %1.\nSunt încărcate opțiunile implicite.\n"
MSG_BADVAL "Avertisment: variabila %1 nu este validă.\n"
MSG_DUMPFILE "Sunt scrise informații de ieșire în fișierul %1!hs!.\n"
MSG_CONFIG "Este încarcată din %1!hs! opțiunile de configurare.\n"
MSG_NOINI "Eroare la încărcarea fișierului de configurare %1!hs!.\nSunt încărcate opțiunile implicite.\n"
MSG_BADVAL "Avertisment: variabila %1!hs! nu este validă.\n"
MSG_NOSPAWN "Lansarea procesului a eșuat.\n"
MSG_RESOLVING "Este căutată gazda: %1..."
MSG_NOSERVICE "Serviciul TCP %1 nu a fost găsit.\n"
MSG_SIZEALIAS "Avertisment: dimensiunea de alias %1 este prea mare, va fi ignorată.\n"
MSG_RESOLVING "Este căutată gazda: %1!hs!..."
MSG_NOSERVICE "Serviciul TCP %1!hs! nu a fost găsit.\n"
MSG_SIZEALIAS "Avertisment: dimensiunea de alias %1!hs! este prea mare, va fi ignorată.\n"
MSG_ERRPIPE "Eroare: lansarea procesului pentru conexiune a eșuat.\n"
MSG_BADUSAGE "Eroare: utilizare nevalidă a comenzii.\n"
MSG_ALREADYCONNECTED "Conexiunea la %1 a fost deja stabilită.\n"
MSG_ALREADYCONNECTED "Conexiunea la %1!hs! a fost deja stabilită.\n"
MSG_WSAEINTR "Apel de funcție întrerupt.\n"
MSG_WSAEBADF "WSAEBADF\n"
MSG_WSAEACCESS "Acces respins.\n"
@ -73,25 +73,25 @@ BEGIN
MSG_WSATRY_AGAIN "Gazda ne-autoritată nu a fost găsită.\n"
MSG_WSANO_RECOVERY "Eroare, stare nerecuperabilă.\n"
MSG_WSANO_DATA "Numeele este valid, nu există date de tipul solicitat.\n"
MSG_KEYNOVAL "[GLOBAL]: Nu există valoare pentru %1.\n"
MSG_KEYBADVAL "[GLOBAL]: Valoarea pentru %1 este eronată.\n"
MSG_KEYBADSTRUCT "%1: Structură eronată.\n"
MSG_KEYBADCHARS "%1: Caractere eronate? %1 -> %3.\n"
MSG_KEYUNEXPLINE "Rând neprevăzut «%1».\n"
MSG_KEYNOVAL "[GLOBAL]: Nu există valoare pentru %1!hs!.\n"
MSG_KEYBADVAL "[GLOBAL]: Valoarea pentru %1!hs! este eronată.\n"
MSG_KEYBADSTRUCT "%1!hs!: Structură eronată.\n"
MSG_KEYBADCHARS "%1!hs!: Caractere eronate? %1!hs! -> %3!hs!.\n"
MSG_KEYUNEXPLINE "Rând neprevăzut «%1!hs!».\n"
MSG_KEYUNEXPEOF "Sfârșit neprevăzut de fișier.\n"
MSG_KEYUNEXPTOK "Simbol neprevăzut %1.\n"
MSG_KEYUNEXPTOKIN "Simbol neprevăzut la %1.\n"
MSG_KEYUNEXPTOK "Simbol neprevăzut %1!hs!.\n"
MSG_KEYUNEXPTOKIN "Simbol neprevăzut la %1!hs!.\n"
MSG_KEYUNEXP "Sfârșit neprevăzut de fișier sau simbol.\n"
MSG_KEYNOGLOBAL "Nu există definiție pentru [GLOBAL]!\n"
MSG_KEYNOCONFIG "Nu există [CONFIG %1].\n"
MSG_KEYUSECONFIG "Utilizare configurație: %1.\n"
MSG_KEYNOSWKEY "Nu există tastă de comutare pentru «%1».\n"
MSG_KEYNOCONFIG "Nu există [CONFIG %1!hs!].\n"
MSG_KEYUSECONFIG "Utilizare configurație: %1!hs!.\n"
MSG_KEYNOSWKEY "Nu există tastă de comutare pentru «%1!hs!».\n"
MSG_KEYCANNOTDEF "În configurația implicită nu pot fi definite taste de comutare, vor fi ignorate.\n"
MSG_KEYDUPSWKEY "Duplicare tastă de comutare.\n"
MSG_KEYUNKNOWNMAP "%1 este o configurație de taste necunoscută.\n"
MSG_KEYUNKNOWNMAP "%1!hs! este o configurație de taste necunoscută.\n"
MSG_KEYNOCHARMAPS "Nu au fost încărcate configurații de caractere.\n"
MSG_KEYNOKEYMAPS "Nu au fost încărcate configurații de taste.\n"
MSG_KEYNUMMAPS "În total există %1 configurații.\n"
MSG_KEYNUMMAPS "În total există %1!hs! configurații.\n"
MSG_KEYBADMAP "Număr de configurație de taste nevalid, încercați «keys display»\n"
MSG_KEYMAPSWITCHED "Configurația de taste a fost comutată.\n"
END

View file

@ -9,25 +9,25 @@ BEGIN
MSG_HELP "Команды можно сократить. Команды:\n\ncl[ose] закрыть текущее соединение\nop[en] подключиться к узлу\nq[uit] выйти из telnet\n"
MSG_HELP_1 "ke[ys] изменить/показать раскладку\nse[t] изменить/показать опции\nz приостановить\n? h[elp] отобразить справку\n"
MSG_INVCMD "Неверная команда. Введите ? для справки.\n"
MSG_ERROR "%1 не удалось.\n"
MSG_INFO "%1\n"
MSG_WARNING "%1\n"
MSG_TRYING "Попытка %1.%2.%3.%4:%5...\n"
MSG_CONNECTED "Подключение к %1. Для выхода нажмите ALT-%2.\n"
MSG_ERROR "%1!hs! не удалось.\n"
MSG_INFO "%1!hs!\n"
MSG_WARNING "%1!hs!\n"
MSG_TRYING "Попытка %1!hs!.%2!hs!.%3!hs!.%4!hs!:%5!hs!...\n"
MSG_CONNECTED "Подключение к %1!hs!. Для выхода нажмите ALT-%2!hs!.\n"
MSG_TERMBYREM "Соединение прервано.\n"
MSG_KEYMAP "Загрузка %1 из %2.\n"
MSG_KEYMAP "Загрузка %1!hs! из %2!hs!.\n"
MSG_ERRKEYMAP "Ошибка при загрузке раскладки.\n"
MSG_DUMPFILE "Запись вывода в файл %1.\n"
MSG_CONFIG "Загрузка параметров из %1.\n"
MSG_NOINI "Ошибка загрузки параметров из %1.\nЗагрузка параметров по умолчанию.\n"
MSG_BADVAL "Предупреждение: неправильная переменная %1.\n"
MSG_DUMPFILE "Запись вывода в файл %1!hs!.\n"
MSG_CONFIG "Загрузка параметров из %1!hs!.\n"
MSG_NOINI "Ошибка загрузки параметров из %1!hs!.\nЗагрузка параметров по умолчанию.\n"
MSG_BADVAL "Предупреждение: неправильная переменная %1!hs!.\n"
MSG_NOSPAWN "Невозможно породить процесс.\n"
MSG_RESOLVING "Поиск узла: %1..."
MSG_NOSERVICE "TCP служба не найдена: %1.\n"
MSG_SIZEALIAS "Внимание: Размер псевдонима %1 слишком большой, игнорирование.\n"
MSG_RESOLVING "Поиск узла: %1!hs!..."
MSG_NOSERVICE "TCP служба не найдена: %1!hs!.\n"
MSG_SIZEALIAS "Внимание: Размер псевдонима %1!hs! слишком большой, игнорирование.\n"
MSG_ERRPIPE "Ошибка: невозможно породить процесс для пайпа.\n"
MSG_BADUSAGE "Ошибка: недопустимое использование команды.\n"
MSG_ALREADYCONNECTED "Уже подключен к %1.\n"
MSG_ALREADYCONNECTED "Уже подключен к %1!hs!.\n"
MSG_WSAEINTR "Вызов функции прерван.\n"
MSG_WSAEBADF "WSAEBADF\n"
MSG_WSAEACCESS "Отказано в доступе.\n"
@ -72,25 +72,25 @@ BEGIN
MSG_WSATRY_AGAIN "Ненадежный узел не найден.\n"
MSG_WSANO_RECOVERY "Это неустранимая ошибка.\n"
MSG_WSANO_DATA "Действительное имя, без записи данных требуемого типаe.\n"
MSG_KEYNOVAL "[GLOBAL]: Нет значения для %1.\n"
MSG_KEYBADVAL "[GLOBAL]: Неверное значение для %1.\n"
MSG_KEYBADSTRUCT "%1: Неправильная структура.\n"
MSG_KEYBADCHARS "%1: Неверные символы? %1 -> %3.\n"
MSG_KEYUNEXPLINE "Неожиданная строка ""%1"".\n"
MSG_KEYNOVAL "[GLOBAL]: Нет значения для %1!hs!.\n"
MSG_KEYBADVAL "[GLOBAL]: Неверное значение для %1!hs!.\n"
MSG_KEYBADSTRUCT "%1!hs!: Неправильная структура.\n"
MSG_KEYBADCHARS "%1!hs!: Неверные символы? %1!hs! -> %3!hs!.\n"
MSG_KEYUNEXPLINE "Неожиданная строка ""%1!hs!"".\n"
MSG_KEYUNEXPEOF "Неожиданный конец файла.\n"
MSG_KEYUNEXPTOK "Неожиданный символ %1.\n"
MSG_KEYUNEXPTOKIN "Неожиданный символ в %1.\n"
MSG_KEYUNEXPTOK "Неожиданный символ %1!hs!.\n"
MSG_KEYUNEXPTOKIN "Неожиданный символ в %1!hs!.\n"
MSG_KEYUNEXP "Неожиданный конец файла или символ.\n"
MSG_KEYNOGLOBAL "[GLOBAL] Не определено!\n"
MSG_KEYNOCONFIG "Нет [CONFIG %1].\n"
MSG_KEYUSECONFIG "Используются настройки: %1.\n"
MSG_KEYNOSWKEY "Нет клавиши переключения для ""%1"".\n"
MSG_KEYNOCONFIG "Нет [CONFIG %1!hs!].\n"
MSG_KEYUSECONFIG "Используются настройки: %1!hs!.\n"
MSG_KEYNOSWKEY "Нет клавиши переключения для ""%1!hs!"".\n"
MSG_KEYCANNOTDEF "Нельзя указать клавишу изменения раскладки клавиатуры по умолчанию игнорирование.\n"
MSG_KEYDUPSWKEY "Эта кнопка уже назначина.\n"
MSG_KEYUNKNOWNMAP "Неизвестная раскладка %1.\n"
MSG_KEYUNKNOWNMAP "Неизвестная раскладка %1!hs!.\n"
MSG_KEYNOCHARMAPS "Не загружена таблица символов.\n"
MSG_KEYNOKEYMAPS "Не загружена раскладка.\n"
MSG_KEYNUMMAPS "Раскладка %1 уже существует.\n"
MSG_KEYNUMMAPS "Раскладка %1!hs! уже существует.\n"
MSG_KEYBADMAP "Неправильный номер раскладки - попробуйте 'keys display'\n"
MSG_KEYMAPSWITCHED "раскладка переключена.\n"
END

View file

@ -11,25 +11,25 @@ BEGIN
MSG_HELP "Komutlar kısaltılmış olabilir. Komutlar:\n\ncl[ose] Şimdiki bağlantıyı kapat.\nop[en] Bir siteye bağlan.\nq[uit] Telnet'ten çık.\n"
MSG_HELP_1 "ke[ys] Tuş haritasını değiştirir ya da görüntüler. (Seçenekleri görmek için keys yazınız.)\nse[t] Yapılandırma seçeneklerini görüntüler ya da değiştirir.\nz Askıya al.\n? h[elp] Yardım bilgisini yazdır.\n"
MSG_INVCMD "Geçersiz komut. Yardım için ? yazınız.\n"
MSG_ERROR "%1 başarısız.\n"
MSG_INFO "%1\n"
MSG_WARNING "%1\n"
MSG_TRYING "Deneniyor: %1.%2.%3.%4:%5...\n"
MSG_CONNECTED "%1 anabilgisayarına bağlandı. Çıkış tuş kombinasyonu ALT-%2.\n"
MSG_ERROR "%1!hs! başarısız.\n"
MSG_INFO "%1!hs!\n"
MSG_WARNING "%1!hs!\n"
MSG_TRYING "Deneniyor: %1!hs!.%2!hs!.%3!hs!.%4!hs!:%5!hs!...\n"
MSG_CONNECTED "%1!hs! anabilgisayarına bağlandı. Çıkış tuş kombinasyonu ALT-%2!hs!.\n"
MSG_TERMBYREM "Bağlantı sonlandırıldı.\n"
MSG_KEYMAP "%2'den %1 yükleniyor.\n"
MSG_KEYMAP "%2!hs!'den %1!hs! yükleniyor.\n"
MSG_ERRKEYMAP "Klavye yerleşimi yüklemede hata.\n"
MSG_DUMPFILE "%1 dosyasına çıktı yazdırılıyor.\n"
MSG_CONFIG "%1'den yapılandırma ayarları yükleniyor.\n"
MSG_NOINI "%1 yapılandırma dosyasına yüklemede hata.\nVarsayılan ayarlar yükleniyor.\n"
MSG_BADVAL "Uyarı: Geçersiz değişken (%1).\n"
MSG_DUMPFILE "%1!hs! dosyasına çıktı yazdırılıyor.\n"
MSG_CONFIG "%1!hs!'den yapılandırma ayarları yükleniyor.\n"
MSG_NOINI "%1!hs! yapılandırma dosyasına yüklemede hata.\nVarsayılan ayarlar yükleniyor.\n"
MSG_BADVAL "Uyarı: Geçersiz değişken (%1!hs!).\n"
MSG_NOSPAWN "İşlem oluşturulamıyor.\n"
MSG_RESOLVING "Anabilgisayara bakılıyor: %1..."
MSG_NOSERVICE "%1 TCP hizmeti bulunamadı.\n"
MSG_SIZEALIAS "Uyarı: %1 takma adının büyüklüğü çok büyük, yok sayılıyor.\n"
MSG_RESOLVING "Anabilgisayara bakılıyor: %1!hs!..."
MSG_NOSERVICE "%1!hs! TCP hizmeti bulunamadı.\n"
MSG_SIZEALIAS "Uyarı: %1!hs! takma adının büyüklüğü çok büyük, yok sayılıyor.\n"
MSG_ERRPIPE "Hata: Boru için işlem oluşturulamıyor.\n"
MSG_BADUSAGE "Hata: Komutun kullanımı geçersiz.\n"
MSG_ALREADYCONNECTED "%1'e zaten bağlanılmış.\n"
MSG_ALREADYCONNECTED "%1!hs!'e zaten bağlanılmış.\n"
MSG_WSAEINTR "Fonksiyon çağrısı kesildi.\n"
MSG_WSAEBADF "WSAEBADF\n"
MSG_WSAEACCESS "İzin geri çevrildi.\n"
@ -74,25 +74,25 @@ BEGIN
MSG_WSATRY_AGAIN "Yetkili olmayan anabilgisayar bulunamadı.\n"
MSG_WSANO_RECOVERY "Bu bir karşılanamayan hatadır.\n"
MSG_WSANO_DATA "Geçerli ad, istenilen tür kaydı verisi yok.\n"
MSG_KEYNOVAL "[GENEL]: %1 için değer yok.\n"
MSG_KEYBADVAL "[GENEL]: %1 için geçersiz değer.\n"
MSG_KEYBADSTRUCT "%1: Geçersiz yapı.\n"
MSG_KEYBADCHARS "%1: Geçersiz karakterler? %1 -> %3.\n"
MSG_KEYUNEXPLINE "Beklenmeyen satır: ""%1"".\n"
MSG_KEYNOVAL "[GENEL]: %1!hs! için değer yok.\n"
MSG_KEYBADVAL "[GENEL]: %1!hs! için geçersiz değer.\n"
MSG_KEYBADSTRUCT "%1!hs!: Geçersiz yapı.\n"
MSG_KEYBADCHARS "%1!hs!: Geçersiz karakterler? %1!hs! -> %3!hs!.\n"
MSG_KEYUNEXPLINE "Beklenmeyen satır: ""%1!hs!"".\n"
MSG_KEYUNEXPEOF "Beklemeyen dosya sonu.\n"
MSG_KEYUNEXPTOK "Beklenmeyen simge: %1.\n"
MSG_KEYUNEXPTOKIN "%1'de beklenmeyen simge.\n"
MSG_KEYUNEXPTOK "Beklenmeyen simge: %1!hs!.\n"
MSG_KEYUNEXPTOKIN "%1!hs!'de beklenmeyen simge.\n"
MSG_KEYUNEXP "Beklenmeyen dosya sonu ya da simge.\n"
MSG_KEYNOGLOBAL "[GENEL] tanımlama yok!\n"
MSG_KEYNOCONFIG "[CONFIG %1] yok.\n"
MSG_KEYUSECONFIG "Yapılandırmayı kullan: %1.\n"
MSG_KEYNOSWKEY """%1"" için geçiş anahtarı yok.\n"
MSG_KEYNOCONFIG "[CONFIG %1!hs!] yok.\n"
MSG_KEYUSECONFIG "Yapılandırmayı kullan: %1!hs!.\n"
MSG_KEYNOSWKEY """%1!hs!"" için geçiş anahtarı yok.\n"
MSG_KEYCANNOTDEF "Varsayılan anahtar haritası için geçiş anahtarı tanımlayamazsınız - yok sayıldı.\n"
MSG_KEYDUPSWKEY "Aynı geçiş anahtarı.\n"
MSG_KEYUNKNOWNMAP "Bilinmeyen anahtar haritası: %1.\n"
MSG_KEYUNKNOWNMAP "Bilinmeyen anahtar haritası: %1!hs!.\n"
MSG_KEYNOCHARMAPS "Bir karakter haritası yüklenmedi.\n"
MSG_KEYNOKEYMAPS "Bir anahtar haritası yüklenmedi.\n"
MSG_KEYNUMMAPS "Burada %1 harita var.\n"
MSG_KEYNUMMAPS "Burada %1!hs! harita var.\n"
MSG_KEYBADMAP "Geçersiz anahtar haritası numarası, ""keys display""ı deneyiniz.\n"
MSG_KEYMAPSWITCHED "Anahtar haritasına geçildi.\n"
END

View file

@ -17,25 +17,25 @@ BEGIN
MSG_HELP "命令可以被简写。命令有:\n\ncl[ose] 关闭当前连接\nop[en] 连接到一个站点\nq[uit] 退出 telnet\n"
MSG_HELP_1 "ke[ys] 修改或显示按键映射(写入一些键来查看选项)\nse[t] 显示或修改配置选项\nz 暂停\n? h[elp] 打印帮助信息\n"
MSG_INVCMD "无效命令。输入 ? 获得帮助。\n"
MSG_ERROR "%1 失败。\n"
MSG_INFO "%1\n"
MSG_WARNING "%1\n"
MSG_TRYING "正在尝试 %1.%2.%3.%4:%5...\n"
MSG_CONNECTED "已连接到 %1。Escape 键是 ALT-%2。\n"
MSG_ERROR "%1!hs! 失败。\n"
MSG_INFO "%1!hs!\n"
MSG_WARNING "%1!hs!\n"
MSG_TRYING "正在尝试 %1!hs!.%2!hs!.%3!hs!.%4!hs!:%5!hs!...\n"
MSG_CONNECTED "已连接到 %1!hs!。Escape 键是 ALT-%2!hs!。\n"
MSG_TERMBYREM "连接结束。\n"
MSG_KEYMAP "正在从 %2 加载 %1。\n"
MSG_KEYMAP "正在从 %2!hs! 加载 %1!hs!。\n"
MSG_ERRKEYMAP "加载按键映射时发生错误。\n"
MSG_DUMPFILE "正在将输出写入到文件 %1 中。\n"
MSG_CONFIG "正在从 %1 中加载配置选项。\n"
MSG_NOINI "从配置文件 %1 中加载发生错误。\n正在加载默认选项。\n"
MSG_BADVAL "警告:无效变量 %1。\n"
MSG_DUMPFILE "正在将输出写入到文件 %1!hs! 中。\n"
MSG_CONFIG "正在从 %1!hs! 中加载配置选项。\n"
MSG_NOINI "从配置文件 %1!hs! 中加载发生错误。\n正在加载默认选项。\n"
MSG_BADVAL "警告:无效变量 %1!hs!。\n"
MSG_NOSPAWN "无法创建进程。\n"
MSG_RESOLVING "正在查找主机:%1..."
MSG_NOSERVICE "无法找到 TCP 服务 %1。\n"
MSG_SIZEALIAS "警告:别名 %1 过大,已忽略。\n"
MSG_RESOLVING "正在查找主机:%1!hs!..."
MSG_NOSERVICE "无法找到 TCP 服务 %1!hs!。\n"
MSG_SIZEALIAS "警告:别名 %1!hs! 过大,已忽略。\n"
MSG_ERRPIPE "错误:无法为管道创建进程。\n"
MSG_BADUSAGE "错误:命令的用法无效。\n"
MSG_ALREADYCONNECTED "已经连接到 %1。\n"
MSG_ALREADYCONNECTED "已经连接到 %1!hs!。\n"
MSG_WSAEINTR "函数调用已被中断。\n"
MSG_WSAEBADF "WSAEBADF\n"
MSG_WSAEACCESS "拒绝访问。\n"
@ -80,25 +80,25 @@ BEGIN
MSG_WSATRY_AGAIN "未找到非授权主机。\n"
MSG_WSANO_RECOVERY "这是一个无法恢复的错误。\n"
MSG_WSANO_DATA "名称有效,但是没有与请求类型相同的数据记录。\n"
MSG_KEYNOVAL "[全局]:没有 %1 的值。\n"
MSG_KEYBADVAL "[全局]%1 的值有错误。\n"
MSG_KEYBADSTRUCT "%1错误的结构。\n"
MSG_KEYBADCHARS "%1错误的字符%1 -> %3。\n"
MSG_KEYUNEXPLINE "未预料的行 ""%1""。\n"
MSG_KEYNOVAL "[全局]:没有 %1!hs! 的值。\n"
MSG_KEYBADVAL "[全局]%1!hs! 的值有错误。\n"
MSG_KEYBADSTRUCT "%1!hs!:错误的结构。\n"
MSG_KEYBADCHARS "%1!hs!:错误的字符?%1!hs! -> %3!hs!。\n"
MSG_KEYUNEXPLINE "未预料的行 ""%1!hs!""。\n"
MSG_KEYUNEXPEOF "未预料的文件结束。\n"
MSG_KEYUNEXPTOK "未预料的令牌 %1。\n"
MSG_KEYUNEXPTOKIN "未预料的 %1 中的令牌。\n"
MSG_KEYUNEXPTOK "未预料的令牌 %1!hs!。\n"
MSG_KEYUNEXPTOKIN "未预料的 %1!hs! 中的令牌。\n"
MSG_KEYUNEXP "未预料的文件或令牌结束。\n"
MSG_KEYNOGLOBAL "没有 [全局] 定义!\n"
MSG_KEYNOCONFIG "没有 [配置 %1]。\n"
MSG_KEYUSECONFIG "使用配置:%1。\n"
MSG_KEYNOSWKEY "没有“%1”的切换键。\n"
MSG_KEYNOCONFIG "没有 [配置 %1!hs!]。\n"
MSG_KEYUSECONFIG "使用配置:%1!hs!。\n"
MSG_KEYNOSWKEY "没有“%1!hs!”的切换键。\n"
MSG_KEYCANNOTDEF "您不能定义默认按键映射的切换键 - 已忽略。\n"
MSG_KEYDUPSWKEY "重复的切换键。\n"
MSG_KEYUNKNOWNMAP "未知的按键映射 %1。\n"
MSG_KEYUNKNOWNMAP "未知的按键映射 %1!hs!。\n"
MSG_KEYNOCHARMAPS "没有加载的字符映射。\n"
MSG_KEYNOKEYMAPS "没有加载的按键映射。\n"
MSG_KEYNUMMAPS "有 %1 个映射。\n"
MSG_KEYNUMMAPS "有 %1!hs! 个映射。\n"
MSG_KEYBADMAP "错误的按键映射码 - 请尝试“keys display”\n"
MSG_KEYMAPSWITCHED "按键映射已经切换。\n"
END

View file

@ -16,25 +16,25 @@ BEGIN
MSG_HELP "命令可以被簡寫。 命令有:\n\ncl[ose] 關閉目前連線\nop[en] 連線到一個網站\nq[uit] 退出 telnet\n"
MSG_HELP_1 "ke[ys] 修改或顯示按鍵映射 (寫入一些鍵來查看選項)\nse[t] 顯示或修改配置選項\nz 暫停\n? h[elp] 列印說明資訊\n"
MSG_INVCMD "無效的命令。輸入 ? 以取得說明。\n"
MSG_ERROR "%1 失敗。\n"
MSG_INFO "%1\n"
MSG_WARNING "%1\n"
MSG_TRYING "正在嘗試 %1.%2.%3.%4:%5...\n"
MSG_CONNECTED "已經連線到 %1。Escape 鍵是 ALT-%2.\n"
MSG_ERROR "%1!hs! 失敗。\n"
MSG_INFO "%1!hs!\n"
MSG_WARNING "%1!hs!\n"
MSG_TRYING "正在嘗試 %1!hs!.%2!hs!.%3!hs!.%4!hs!:%5!hs!...\n"
MSG_CONNECTED "已經連線到 %1!hs!。Escape 鍵是 ALT-%2!hs!.\n"
MSG_TERMBYREM "連線結束。\n"
MSG_KEYMAP "正在從 %2 載入 %1。\n"
MSG_KEYMAP "正在從 %2!hs! 載入 %1!hs!。\n"
MSG_ERRKEYMAP "載入按鍵映射時發生錯誤。\n"
MSG_DUMPFILE "正在將輸出寫入到檔案 %1 中。\n"
MSG_CONFIG "正在從 %1 中載入配置選項。\n"
MSG_NOINI "從配置檔案 %1 中載入發生錯誤。\n正在載入預設選項。\n"
MSG_BADVAL "警告: 無效的變量 %1。\n"
MSG_DUMPFILE "正在將輸出寫入到檔案 %1!hs! 中。\n"
MSG_CONFIG "正在從 %1!hs! 中載入配置選項。\n"
MSG_NOINI "從配置檔案 %1!hs! 中載入發生錯誤。\n正在載入預設選項。\n"
MSG_BADVAL "警告: 無效的變量 %1!hs!。\n"
MSG_NOSPAWN "無法建立進程。\n"
MSG_RESOLVING "正在查找主機: %1..."
MSG_NOSERVICE "無法找到 TCP 服務 %1。\n"
MSG_SIZEALIAS "警告: 别名 %1 太大了,正在忽略。\n"
MSG_RESOLVING "正在查找主機: %1!hs!..."
MSG_NOSERVICE "無法找到 TCP 服務 %1!hs!。\n"
MSG_SIZEALIAS "警告: 别名 %1!hs! 太大了,正在忽略。\n"
MSG_ERRPIPE "錯誤: 無法為管道建立進程。\n"
MSG_BADUSAGE "錯誤: 無效的命令用法。\n"
MSG_ALREADYCONNECTED "已經連線到 %1。\n"
MSG_ALREADYCONNECTED "已經連線到 %1!hs!。\n"
MSG_WSAEINTR "中斷的函數調用。\n"
MSG_WSAEBADF "WSAEBADF\n"
MSG_WSAEACCESS "拒絕存取。\n"
@ -79,25 +79,25 @@ BEGIN
MSG_WSATRY_AGAIN "找不到非授權主機。\n"
MSG_WSANO_RECOVERY "這是一個無法恢復的錯誤。\n"
MSG_WSANO_DATA "名稱有效,但沒有請求數據記錄的類型。\n"
MSG_KEYNOVAL "[全域]: 沒有 %1 的值。\n"
MSG_KEYBADVAL "[全域]: %1 的值有錯誤。\n"
MSG_KEYBADSTRUCT "%1: 錯誤的結構。\n"
MSG_KEYBADCHARS "%1: 錯誤的字符?%1 -> %3。\n"
MSG_KEYUNEXPLINE "未預期的行 ""%1""。\n"
MSG_KEYNOVAL "[全域]: 沒有 %1!hs! 的值。\n"
MSG_KEYBADVAL "[全域]: %1!hs! 的值有錯誤。\n"
MSG_KEYBADSTRUCT "%1!hs!: 錯誤的結構。\n"
MSG_KEYBADCHARS "%1!hs!: 錯誤的字符?%1!hs! -> %3!hs!。\n"
MSG_KEYUNEXPLINE "未預期的行 ""%1!hs!""。\n"
MSG_KEYUNEXPEOF "未預期的檔案結尾。\n"
MSG_KEYUNEXPTOK "未預期的權杖 %1。\n"
MSG_KEYUNEXPTOKIN "在 %1 中出現未預期的權杖。\n"
MSG_KEYUNEXPTOK "未預期的權杖 %1!hs!。\n"
MSG_KEYUNEXPTOKIN "在 %1!hs! 中出現未預期的權杖。\n"
MSG_KEYUNEXP "未預期的檔案結尾或權杖。\n"
MSG_KEYNOGLOBAL "沒有 [全域] 定義!\n"
MSG_KEYNOCONFIG "沒有 [配置 %1]。\n"
MSG_KEYUSECONFIG "使用配置: %1。\n"
MSG_KEYNOSWKEY "沒有 ""%1"" 的切換鍵。\n"
MSG_KEYNOCONFIG "沒有 [配置 %1!hs!]。\n"
MSG_KEYUSECONFIG "使用配置: %1!hs!。\n"
MSG_KEYNOSWKEY "沒有 ""%1!hs!"" 的切換鍵。\n"
MSG_KEYCANNOTDEF "您不能定義預設按鍵映射的切換鍵 - 已略過。\n"
MSG_KEYDUPSWKEY "重複的切換鍵。\n"
MSG_KEYUNKNOWNMAP "未知的按鍵映射 %1。\n"
MSG_KEYUNKNOWNMAP "未知的按鍵映射 %1!hs!。\n"
MSG_KEYNOCHARMAPS "沒有已載入的字符映射。\n"
MSG_KEYNOKEYMAPS "沒有已載入的按鍵映射。\n"
MSG_KEYNUMMAPS "有 %1 個映射。\n"
MSG_KEYNUMMAPS "有 %1!hs! 個映射。\n"
MSG_KEYBADMAP "錯誤的按鍵映射碼 - 請嘗試 'keys display'\n"
MSG_KEYMAPSWITCHED "按鍵映射已經切換。\n"
END

View file

@ -9,6 +9,7 @@
#include <winbase.h>
#include <winuser.h>
#include <wincon.h>
#include <winnls.h>
#define _INC_WINDOWS
#include <winsock.h>

View file

@ -81,6 +81,47 @@ int printit(const char * it){
return 0;
}
#ifdef __REACTOS__
int wprintit(LPCWSTR it)
{
DWORD numwritten;
if (!ini.get_output_redir())
{
if (!WriteConsoleW(GetStdHandle(STD_OUTPUT_HANDLE),
it, wcslen(it), &numwritten, NULL))
{
return -1;
}
}
else
{
// calculate the number of bytes needed to store the UTF-8 string
int cbMultibyte = WideCharToMultiByte(CP_UTF8, 0, it, -1, NULL, 0, NULL, NULL);
if (cbMultibyte == 0)
return 0;
if (cbMultibyte < 0)
return -1;
// allocate the buffer for the UTF-8 string
char* szBuffer = new char[cbMultibyte];
if (!szBuffer)
return -1;
bool bSuccess = false;
if (WideCharToMultiByte(CP_UTF8, 0, it, -1, szBuffer, cbMultibyte, NULL, NULL) &&
WriteFile(GetStdHandle(STD_OUTPUT_HANDLE),
szBuffer, cbMultibyte, &numwritten, NULL))
{
bSuccess = true;
}
delete[] szBuffer;
if (!bSuccess)
return -1;
}
return 0;
}
#endif
int printm(LPTSTR szModule, BOOL fSystem, DWORD dwMessageId, ...)
{
int Result = 0;
@ -91,7 +132,23 @@ int printm(LPTSTR szModule, BOOL fSystem, DWORD dwMessageId, ...)
va_list Ellipsis;
va_start(Ellipsis, dwMessageId);
#ifdef __REACTOS__
LPWSTR pszMessage = NULL;
DWORD dwMessage = 0;
if(fSystem) {
dwMessage = FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER |
FORMAT_MESSAGE_FROM_SYSTEM, hModule, dwMessageId,
LANG_USER_DEFAULT, (LPWSTR)&pszMessage, 128, &Ellipsis);
} else {
// we will use a string table.
WCHAR wszString[256];
if(LoadStringW(0, dwMessageId, wszString, sizeof(wszString) / sizeof(*wszString)))
dwMessage = FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER |
FORMAT_MESSAGE_FROM_STRING, wszString, dwMessageId,
LANG_USER_DEFAULT, (LPWSTR)&pszMessage, sizeof(wszString) / sizeof(*wszString), &Ellipsis);
}
#else
LPTSTR pszMessage = 0;
DWORD dwMessage = 0;
if(fSystem) {
@ -106,6 +163,7 @@ int printm(LPTSTR szModule, BOOL fSystem, DWORD dwMessageId, ...)
FORMAT_MESSAGE_FROM_STRING, szString, dwMessageId,
LANG_USER_DEFAULT, (LPTSTR)&pszMessage, 256, &Ellipsis);
}
#endif
va_end(Ellipsis);
@ -113,8 +171,11 @@ int printm(LPTSTR szModule, BOOL fSystem, DWORD dwMessageId, ...)
FreeLibrary(hModule);
if (dwMessage) {
#ifdef __REACTOS__
Result = wprintit(pszMessage);
#else
Result = printit(pszMessage);
#endif
LocalFree(pszMessage);
}

View file

@ -1,6 +1,6 @@
#include "precomp.h"
// from the PVAX (http://www.ccas.ru/~posp/popov/spawn.htm)
// from the PVAX (https://web.archive.org/web/20030707153537/http://www.ccas.ru/~posp/popov/spawn.htm)
// Create a process with pipes to stdin/out/err
BOOL CreateHiddenConsoleProcess(LPCTSTR szChildName, PROCESS_INFORMATION* ppi,
LPHANDLE phInWrite, LPHANDLE phOutRead,

View file

@ -7,7 +7,6 @@
#define REACTOS_STR_ORIGINAL_COPYRIGHT "Ged Murphy (gedmurphy@reactos.org)"
#include <reactos/version.rc>
/* UTF-8 */
#pragma code_page(65001)

View file

@ -1,5 +1,12 @@
// COPYRIGHT: 2012 Arda Tanrıkulu <ardatanrikulu@gmail.com>
// 2013-2019 Erdem Ersoy
/*
* PROJECT: ReactOS Notepad
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
* PURPOSE: Turkish resource file
* TRANSLATORS: Copyright 2012 Arda Tanrıkulu <ardatanrikulu@gmail.com>
* Copyright 2013-2019 Erdem Ersoy <erdemersoy@erdemersoy.net>
* Copyright 2021 Süleyman Poyraz <zaryob.dev@gmail.com>
* Copyright 2024 Mahir Gül <mahirgul@gmail.com>
*/
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
@ -173,12 +180,12 @@ BEGIN
STRING_LINE_COLUMN "%d. Satır, %d. Sütun"
STRING_PRINTERROR """%s"" dosyası yazdırılamıyor.\n\nYazıcının açık olduğundan ve doğru yapılandırıldığından emin olunuz."
STRING_DEFAULTFONT "Lucida Console"
STRING_LINE_NUMBER_OUT_OF_RANGE "The specified line number is out of range."
STRING_NOWPRINTING "Now printing page..."
STRING_PRINTCANCELING "The print job is being canceled..."
STRING_PRINTCOMPLETE "Printing is successfully done."
STRING_PRINTCANCELED "Printing has been canceled."
STRING_PRINTFAILED "Printing failed."
STRING_LINE_NUMBER_OUT_OF_RANGE "Belirtilen satır numarası aralık dışındadır."
STRING_NOWPRINTING "Yazdırılıyor..."
STRING_PRINTCANCELING "Yazdırma işi iptal ediliyor..."
STRING_PRINTCOMPLETE "Yazdırma işlemi başarıyla tamamlandı."
STRING_PRINTCANCELED "Yazdırma işlemi iptal edildi."
STRING_PRINTFAILED "Yazdırma başarısız oldu."
STRING_TEXT_DOCUMENT "Metin Belgesi"
STRING_NOTEPAD_AUTHORS "Telif Hakları: 1997,98 Marcel Baur, 2000 Mike McCormack, 2002 Sylvain Petreolle, 2002 Andriy Palamarchuk\r\n"

View file

@ -118,7 +118,7 @@ typedef struct
/*
* See also:
* https://support.microsoft.com/en-us/windows/changing-header-and-footer-commands-in-notepad-c1b0e27b-497d-c478-c4c1-0da491cac148
* https://support.microsoft.com/en-us/windows/help-in-notepad-4d68c388-2ff2-0e7f-b706-35fb2ab88a8c
*/
static VOID
DrawHeaderOrFooter(HDC hDC, LPRECT pRect, LPCTSTR pszFormat, INT nPageNo, const SYSTEMTIME *pstNow)

View file

@ -8,7 +8,7 @@
LANGUAGE LANG_ARABIC, SUBLANG_DEFAULT
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "File"
BEGIN

View file

@ -8,7 +8,7 @@
LANGUAGE LANG_CZECH, SUBLANG_DEFAULT
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "File"
BEGIN

View file

@ -8,7 +8,7 @@
LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "Datei"
BEGIN

View file

@ -8,7 +8,7 @@
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_UK
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "File"
BEGIN

View file

@ -8,7 +8,7 @@
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "File"
BEGIN

View file

@ -10,7 +10,7 @@
LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "Archivo"
BEGIN

View file

@ -8,7 +8,7 @@
LANGUAGE LANG_ESTONIAN, SUBLANG_DEFAULT
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "File"
BEGIN

View file

@ -8,7 +8,7 @@
LANGUAGE LANG_FRENCH, SUBLANG_FRENCH_CANADIAN
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "File"
BEGIN

View file

@ -8,7 +8,7 @@
LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "File"
BEGIN

View file

@ -8,7 +8,7 @@
LANGUAGE LANG_HEBREW, SUBLANG_DEFAULT
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "File"
BEGIN

View file

@ -8,7 +8,7 @@
LANGUAGE LANG_INDONESIAN, SUBLANG_DEFAULT
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "Be&rkas"
BEGIN

View file

@ -8,7 +8,7 @@
LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "File"
BEGIN

View file

@ -8,7 +8,7 @@
LANGUAGE LANG_POLISH, SUBLANG_NEUTRAL
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "Pl&ik"
BEGIN

View file

@ -7,7 +7,7 @@
LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "Arquivo"
BEGIN

View file

@ -7,7 +7,7 @@
LANGUAGE LANG_PORTUGUESE, SUBLANG_NEUTRAL
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "Ficheiro"
BEGIN

View file

@ -9,7 +9,7 @@
LANGUAGE LANG_ROMANIAN, SUBLANG_DEFAULT
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "&Fişier"
BEGIN

View file

@ -8,7 +8,7 @@
LANGUAGE LANG_RUSSIAN, SUBLANG_NEUTRAL
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "Файл"
BEGIN

View file

@ -8,7 +8,7 @@
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "Dosya"
BEGIN

View file

@ -12,7 +12,7 @@
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "文件"
BEGIN

View file

@ -9,7 +9,7 @@
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_HONGKONG
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "檔案"
BEGIN

View file

@ -8,7 +8,7 @@
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
IDR_OSK_MENU MENU DISCARDABLE
IDR_OSK_MENU MENU
BEGIN
POPUP "檔案"
BEGIN

View file

@ -6,6 +6,7 @@
*/
/* INCLUDES ******************************************************************/
#include "precomp.h"
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS On Screen Keyboard"
@ -17,7 +18,6 @@
IDI_OSK ICON "res/osk.ico"
IDI_SOUNDCLICK WAVE "res/click.wav"
IDI_BACK ICON "res/back.ico"
IDI_TAB ICON "res/tab.ico"
IDI_CAPS_LOCK ICON "res/caps_lock.ico"
@ -35,8 +35,9 @@ IDI_BOTTOM ICON "res/bottom.ico"
#include <reactos/manifest_exe.rc>
// UTF-8
/* UTF-8 */
#pragma code_page(65001)
#ifdef LANGUAGE_AR_DZ
#include "lang/ar-DZ.rc"
#endif
@ -100,4 +101,5 @@ IDI_BOTTOM ICON "res/bottom.ico"
#ifdef LANGUAGE_ZH_TW
#include "lang/zh-TW.rc"
#endif
/* EOF */

View file

@ -18,7 +18,7 @@ Also, each [Section] is language-independent and individual, you can override th
program or any other field by adding a language-specific [Section.], followed by the language code.
NOTE: You can find a complete listing of LCIDs and language names here, includes neutral codes:
<https://msdn.microsoft.com/en-us/library/windows/desktop/dd318693%28v=vs.85%29.aspx>
<https://learn.microsoft.com/en-us/windows/win32/intl/language-identifier-constants-and-strings>
Now RAPPS also accepts neutral language codes, meaning that you can do things like this:

View file

@ -158,7 +158,7 @@ CAppDB::EnumInstalledRootKey(UINT Index, REGSAM &RegSam)
{
// Loop for through all combinations.
// Note that HKEY_CURRENT_USER\Software does not have a redirect
// https://docs.microsoft.com/en-us/windows/win32/winprog64/shared-registry-keys#redirected-shared-and-reflected-keys-under-wow64
// https://learn.microsoft.com/en-us/windows/win32/winprog64/shared-registry-keys#redirected-shared-and-reflected-keys-under-wow64
if (Index < (IsSystem64Bit() ? 3 : 2))
return GetRootKeyInfo(Index, RegSam);
else

View file

@ -16,6 +16,50 @@ using namespace Gdiplus;
HICON g_hDefaultPackageIcon = NULL;
static int g_DefaultPackageIconILIdx = I_IMAGENONE;
// **** Menu helpers ****
BOOL
DeleteMenuEx(
_In_ HMENU hMenu,
_In_ UINT uPosition,
_In_ UINT uFlags)
{
INT pos;
MENUITEMINFOW mii = { sizeof(mii), MIIM_FTYPE, 0 };
bool bIsValidItem1, bIsValidItem2;
bool bIsSep1, bIsSep2;
if (uFlags & MF_BYPOSITION)
pos = (INT)uPosition;
else
pos = ::GetMenuPosFromID(hMenu, uPosition);
if (pos < 0)
return FALSE;
bIsValidItem1 = ((pos > 0) && ::GetMenuItemInfoW(hMenu, pos - 1, TRUE, &mii));
bIsSep1 = bIsValidItem1 && !!(mii.fType & MFT_SEPARATOR);
bIsValidItem2 = ::GetMenuItemInfoW(hMenu, pos + 1, TRUE, &mii);
bIsSep2 = bIsValidItem2 && !!(mii.fType & MFT_SEPARATOR);
if (bIsSep1 && !bIsSep2 && !bIsValidItem2)
pos = pos - 1; // Delete separator only if pos+1 has no item
else if (!bIsSep1 && bIsSep2 && !bIsValidItem1)
pos = pos + 1; // Delete separator only if pos-1 has no item
else if (bIsSep1 && bIsSep2)
pos = pos + 1;
else
pos = -1;
// Delete one of the separators if necessary
if (pos != -1)
::DeleteMenu(hMenu, pos, MF_BYPOSITION);
// Finally, delete the menu item itself.
return ::DeleteMenu(hMenu, uPosition, uFlags);
}
// **** Menu helpers ****
// **** CMainToolbar ****
VOID
@ -149,26 +193,28 @@ CMainToolbar::Create(HWND hwndParent)
AddButtons(_countof(Buttons), Buttons);
/* Remember ideal width to use as a max width of buttons */
SIZE size;
GetIdealSize(FALSE, &size);
m_dButtonsWidthMax = size.cx;
/* Remember the ideal width to use as a max width of buttons */
UpdateMaxButtonsWidth();
return m_hWnd;
}
VOID
CMainToolbar::HideButtonCaption()
void
CMainToolbar::ShowButtonCaption(bool bShow)
{
DWORD dCurrentExStyle = (DWORD)SendMessageW(TB_GETEXTENDEDSTYLE, 0, 0);
SendMessageW(TB_SETEXTENDEDSTYLE, 0, dCurrentExStyle | TBSTYLE_EX_MIXEDBUTTONS);
if (bShow)
SendMessageW(TB_SETEXTENDEDSTYLE, 0, dCurrentExStyle & ~TBSTYLE_EX_MIXEDBUTTONS);
else
SendMessageW(TB_SETEXTENDEDSTYLE, 0, dCurrentExStyle | TBSTYLE_EX_MIXEDBUTTONS);
}
VOID
CMainToolbar::ShowButtonCaption()
void
CMainToolbar::UpdateMaxButtonsWidth()
{
DWORD dCurrentExStyle = (DWORD)SendMessageW(TB_GETEXTENDEDSTYLE, 0, 0);
SendMessageW(TB_SETEXTENDEDSTYLE, 0, dCurrentExStyle & ~TBSTYLE_EX_MIXEDBUTTONS);
SIZE size;
GetIdealSize(FALSE, &size);
m_dButtonsWidthMax = size.cx;
}
DWORD
@ -267,21 +313,6 @@ CAppRichEdit::InsertTextWithString(UINT StringID, const CStringW &Text, DWORD Te
LoadAndInsertText(StringID, Text, TextFlags);
}
}
VOID
CAppRichEdit::SetWelcomeText()
{
CStringW szText;
szText.LoadStringW(IDS_WELCOME_TITLE);
SetText(szText, CFE_BOLD);
szText.LoadStringW(IDS_WELCOME_TEXT);
InsertText(szText, 0);
szText.LoadStringW(IDS_WELCOME_URL);
InsertText(szText, CFM_LINK);
}
// **** CAppRichEdit ****
int
@ -939,12 +970,41 @@ CAppInfoDisplay::ShowAppInfo(CAppInfo *Info)
Info->ShowAppInfo(RichEdit);
}
VOID
CAppInfoDisplay::SetWelcomeText()
void
CAppInfoDisplay::SetWelcomeText(bool bAppwiz)
{
CStringW szText;
ScrnshotPrev->DisplayEmpty();
ResizeChildren();
RichEdit->SetWelcomeText();
// Display the standard banner in normal mode, or
// the specific "Add/Remove Programs" in APPWIZ-mode.
if (!bAppwiz)
{
szText.LoadStringW(IDS_WELCOME_TITLE);
RichEdit->SetText(szText, CFE_BOLD);
RichEdit->InsertText(L"\n\n", 0);
szText.LoadStringW(IDS_WELCOME_TEXT);
RichEdit->InsertText(szText, 0);
szText.LoadStringW(IDS_WELCOME_URL);
RichEdit->InsertText(szText, CFM_LINK);
}
else
{
szText.LoadStringW(IDS_APPWIZ_TITLE);
RichEdit->SetText(szText, CFE_BOLD);
RichEdit->InsertText(L"\n\n", 0);
szText.LoadStringW(IDS_APPWIZ_TEXT1);
RichEdit->InsertText(szText, 0);
RichEdit->InsertText(L"\n", 0);
szText.LoadStringW(IDS_APPWIZ_TEXT2);
RichEdit->InsertText(szText, 0);
}
}
VOID
@ -1113,19 +1173,11 @@ CAppsListView::SetWatermark(const CStringW &Text)
m_Watermark = Text;
}
VOID
CAppsListView::SetCheckboxesVisible(BOOL bIsVisible)
void
CAppsListView::ShowCheckboxes(bool bShow)
{
if (bIsVisible)
{
SetExtendedListViewStyle(LVS_EX_CHECKBOXES | LVS_EX_FULLROWSELECT);
}
else
{
SetExtendedListViewStyle(LVS_EX_FULLROWSELECT);
}
bHasCheckboxes = bIsVisible;
SetExtendedListViewStyle((bShow ? LVS_EX_CHECKBOXES : 0) | LVS_EX_FULLROWSELECT);
bHasCheckboxes = bShow;
}
VOID
@ -1258,7 +1310,7 @@ CAppsListView::Create(HWND hwndParent)
if (hwnd)
{
SetCheckboxesVisible(FALSE);
ShowCheckboxes(false);
}
#pragma push_macro("SubclassWindow")
@ -1359,16 +1411,18 @@ CAppsListView::SetDisplayAppType(APPLICATION_VIEW_TYPE AppType)
/* Add columns to ListView */
szText.LoadStringW(IDS_APP_NAME);
AddColumn(ColumnCount++, szText, 250, LVCFMT_LEFT);
AddColumn(ColumnCount++, szText, 368, LVCFMT_LEFT);
szText.LoadStringW(IDS_APP_INST_VERSION);
AddColumn(ColumnCount++, szText, 90, LVCFMT_RIGHT);
#if 0 // This column is not currently useful for installed apps.
szText.LoadStringW(IDS_APP_DESCRIPTION);
AddColumn(ColumnCount++, szText, 300, LVCFMT_LEFT);
#endif
// disable checkboxes
SetCheckboxesVisible(FALSE);
// Disable checkboxes
ShowCheckboxes(false);
break;
case AppViewTypeAvailableApps:
@ -1383,8 +1437,8 @@ CAppsListView::SetDisplayAppType(APPLICATION_VIEW_TYPE AppType)
szText.LoadStringW(IDS_APP_DESCRIPTION);
AddColumn(ColumnCount++, szText, 300, LVCFMT_LEFT);
// enable checkboxes
SetCheckboxesVisible(TRUE);
// Enable checkboxes
ShowCheckboxes(true);
break;
default:
@ -1490,6 +1544,41 @@ CApplicationView::ProcessWindowMessage(
bSuccess &= CreateListView();
bSuccess &= CreateAppInfoDisplay();
/* APPWIZ-mode: Remove the unneeded menu items and toolbar buttons */
if (m_MainWindow->m_bAppwizMode)
{
HMENU hMenu;
/* Delete the "Settings" item in the "File" sub-menu */
hMenu = ::GetSubMenu(m_MainWindow->GetMenu(), 0);
DeleteMenuEx(hMenu, ID_SETTINGS, MF_BYCOMMAND);
/* Remove the menu items: ID_INSTALL, ID_RESETDB */
hMenu = GetMenu();
DeleteMenuEx(hMenu, ID_INSTALL, MF_BYCOMMAND);
DeleteMenuEx(hMenu, ID_RESETDB, MF_BYCOMMAND);
/* Remove the toolbar buttons:
* ID_INSTALL, ID_CHECK_ALL, ID_RESETDB
* We only keep:
* ID_UNINSTALL, ID_MODIFY, ID_REFRESH */
TBBUTTONINFO info = { sizeof(info), 0 };
int index;
index = m_Toolbar->GetButtonInfo(ID_INSTALL, &info);
if (index >= 0) m_Toolbar->DeleteButton(index);
index = m_Toolbar->GetButtonInfo(ID_CHECK_ALL, &info);
if (index >= 0) m_Toolbar->DeleteButton(index);
index = m_Toolbar->GetButtonInfo(ID_RESETDB, &info);
if (index >= 0) m_Toolbar->DeleteButton(index);
/* Update the ideal width to use as a max width of buttons */
m_Toolbar->UpdateMaxButtonsWidth();
}
/* Resize the toolbar */
m_Toolbar->AutoSize();
RECT rTop;
@ -1728,7 +1817,7 @@ CApplicationView::OnSize(HWND hwnd, WPARAM wParam, LPARAM lParam)
if (wParam == SIZE_MINIMIZED)
return;
/* Size tool bar */
/* Resize the toolbar */
m_Toolbar->AutoSize();
/* Automatically hide captions */
@ -1737,11 +1826,11 @@ CApplicationView::OnSize(HWND hwnd, WPARAM wParam, LPARAM lParam)
if (dSearchbarMargin > dToolbarTreshold)
{
m_Toolbar->ShowButtonCaption();
m_Toolbar->ShowButtonCaption(true);
}
else if (dSearchbarMargin < dToolbarTreshold)
{
m_Toolbar->HideButtonCaption();
m_Toolbar->ShowButtonCaption(false);
}
RECT r = {0, 0, LOWORD(lParam), HIWORD(lParam)};
@ -1917,9 +2006,10 @@ CApplicationView::Create(HWND hwndParent)
{
RECT r = {0, 0, 0, 0};
HMENU menu = GetSubMenu(LoadMenuW(hInst, MAKEINTRESOURCEW(IDR_APPLICATIONMENU)), 0);
// Pick the "Programs" sub-menu for building the context menu.
HMENU hMenu = ::GetSubMenu(m_MainWindow->GetMenu(), 1);
return CWindowImpl::Create(hwndParent, r, L"", WS_CHILD | WS_VISIBLE | WS_CLIPCHILDREN | WS_CLIPSIBLINGS, 0, menu);
return CWindowImpl::Create(hwndParent, r, L"", WS_CHILD | WS_VISIBLE | WS_CLIPCHILDREN | WS_CLIPSIBLINGS, 0, hMenu);
}
BOOL
@ -1930,32 +2020,41 @@ CApplicationView::SetDisplayAppType(APPLICATION_VIEW_TYPE AppType)
return FALSE;
}
ApplicationViewType = AppType;
m_AppsInfo->SetWelcomeText();
m_AppsInfo->SetWelcomeText(m_MainWindow->m_bAppwizMode);
HMENU hMenu = ::GetMenu(m_hWnd);
switch (AppType)
{
case AppViewTypeInstalledApps:
EnableMenuItem(hMenu, ID_REGREMOVE, MF_ENABLED);
{
EnableMenuItem(hMenu, ID_INSTALL, MF_GRAYED);
EnableMenuItem(hMenu, ID_UNINSTALL, MF_ENABLED);
EnableMenuItem(hMenu, ID_MODIFY, MF_ENABLED);
EnableMenuItem(hMenu, ID_REGREMOVE, MF_ENABLED);
m_Toolbar->SendMessageW(TB_ENABLEBUTTON, ID_INSTALL, FALSE);
m_Toolbar->SendMessageW(TB_ENABLEBUTTON, ID_UNINSTALL, TRUE);
m_Toolbar->SendMessageW(TB_ENABLEBUTTON, ID_MODIFY, TRUE);
m_Toolbar->SendMessageW(TB_ENABLEBUTTON, ID_CHECK_ALL, FALSE);
break;
}
case AppViewTypeAvailableApps:
EnableMenuItem(hMenu, ID_REGREMOVE, MF_GRAYED);
{
// We shouldn't get there in APPWIZ-mode.
ATLASSERT(!m_MainWindow->m_bAppwizMode);
EnableMenuItem(hMenu, ID_INSTALL, MF_ENABLED);
EnableMenuItem(hMenu, ID_UNINSTALL, MF_GRAYED);
EnableMenuItem(hMenu, ID_MODIFY, MF_GRAYED);
EnableMenuItem(hMenu, ID_REGREMOVE, MF_GRAYED);
m_Toolbar->SendMessageW(TB_ENABLEBUTTON, ID_INSTALL, TRUE);
m_Toolbar->SendMessageW(TB_ENABLEBUTTON, ID_UNINSTALL, FALSE);
m_Toolbar->SendMessageW(TB_ENABLEBUTTON, ID_MODIFY, FALSE);
m_Toolbar->SendMessageW(TB_ENABLEBUTTON, ID_CHECK_ALL, TRUE);
break;
}
}
return TRUE;
}

View file

@ -28,6 +28,7 @@ extern "C" {
#define REGPATH_UNINSTALL L"Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall"
#define DB_NONE L"!" // Skip/Ignore
#define DB_GENINST_FILES L"Files"
#define DB_GENINST_DIR L"Dir"
#define DB_GENINST_ICON L"Icon"
@ -230,6 +231,8 @@ GetCustomIconPath(InstallInfo &Info, CStringW &Path)
{
if (*GetGenerateString(DB_GENINST_ICON, Path))
{
if (Path.Compare(DB_NONE) == 0)
return HRESULT_FROM_WIN32(ERROR_CAN_NOT_COMPLETE);
Path = BuildPath(Info.InstallDir, Path);
int idx = PathParseIconLocation(Path.GetBuffer());
Path.ReleaseBuffer();
@ -432,7 +435,7 @@ ExtractAndInstallThread(LPVOID Parameter)
{
const BOOL PerUserModeDefault = TRUE;
InstallInfo &Info = *static_cast<InstallInfo *>(g_pInfo);
LPCWSTR AppName = Info.AppName, Archive = Info.ArchivePath, None = L"!";
LPCWSTR AppName = Info.AppName, Archive = Info.ArchivePath, None = DB_NONE;
CStringW installdir, tempdir, files, shortcut, tmp;
HRESULT hr;
CRegKey arpkey;
@ -534,9 +537,9 @@ ExtractAndInstallThread(LPVOID Parameter)
(tmp = tmp.Mid(0, cch)).AppendFormat(unparamsfmt, L" /S", modechar, bitness, arpkeyname);
WriteArpEntry(L"QuietUninstallString", tmp);
if (GetCustomIconPath(Info, tmp) != S_OK)
tmp = Info.MainApp;
WriteArpEntry(L"DisplayIcon", tmp);
hr = GetCustomIconPath(Info, tmp);
if (hr != HRESULT_FROM_WIN32(ERROR_CAN_NOT_COMPLETE))
WriteArpEntry(L"DisplayIcon", hr == S_OK ? tmp : Info.MainApp);
if (*GetCommonString(DB_VERSION, tmp))
WriteArpEntry(L"DisplayVersion", tmp);

View file

@ -82,7 +82,7 @@ CSideTreeView::~CSideTreeView()
// **** CMainWindow ****
CMainWindow::CMainWindow(CAppDB *db, BOOL bAppwiz) : m_ClientPanel(NULL), m_Db(db), bAppwizMode(bAppwiz), SelectedEnumType(ENUM_ALL_INSTALLED)
CMainWindow::CMainWindow(CAppDB *db, BOOL bAppwiz) : m_ClientPanel(NULL), m_Db(db), m_bAppwizMode(bAppwiz), SelectedEnumType(ENUM_ALL_INSTALLED)
{
}
@ -100,6 +100,10 @@ CMainWindow::InitCategoriesList()
m_TreeView->AddCategory(hRootItemInstalled, IDS_APPLICATIONS, IDI_APPS);
m_TreeView->AddCategory(hRootItemInstalled, IDS_UPDATES, IDI_APPUPD);
// Do not show any other categories in APPWIZ-mode.
if (m_bAppwizMode)
goto Finish;
m_TreeView->AddCategory(TVI_ROOT, IDS_SELECTEDFORINST, IDI_SELECTEDFORINST);
hRootItemAvailable = m_TreeView->AddCategory(TVI_ROOT, IDS_AVAILABLEFORINST, IDI_CATEGORY);
@ -120,10 +124,12 @@ CMainWindow::InitCategoriesList()
m_TreeView->AddCategory(hRootItemAvailable, IDS_CAT_THEMES, IDI_CAT_THEMES);
m_TreeView->AddCategory(hRootItemAvailable, IDS_CAT_OTHER, IDI_CAT_OTHER);
Finish:
m_TreeView->SetImageList();
m_TreeView->Expand(hRootItemInstalled, TVE_EXPAND);
m_TreeView->Expand(hRootItemAvailable, TVE_EXPAND);
m_TreeView->SelectItem(bAppwizMode ? hRootItemInstalled : hRootItemAvailable);
if (!m_bAppwizMode)
m_TreeView->Expand(hRootItemAvailable, TVE_EXPAND);
m_TreeView->SelectItem(m_bAppwizMode ? hRootItemInstalled : hRootItemAvailable);
}
BOOL
@ -298,6 +304,7 @@ CMainWindow::CheckAvailable()
{
if (m_Db->GetAvailableCount() == 0)
{
CUpdateDatabaseMutex lock;
m_Db->RemoveCached();
m_Db->UpdateAvailable();
}
@ -312,13 +319,13 @@ CMainWindow::ProcessWindowMessage(HWND hwnd, UINT Msg, WPARAM wParam, LPARAM lPa
case WM_CREATE:
if (!InitControls())
::PostMessageW(hwnd, WM_CLOSE, 0, 0);
::PostMessageW(hwnd, DM_REPOSITION, 0, 0);
break;
case WM_DESTROY:
{
ShowWindow(SW_HIDE);
hMainWnd = NULL;
SaveSettings(hwnd, &SettingsInfo);
FreeLogs();
delete m_ClientPanel;
@ -327,6 +334,19 @@ CMainWindow::ProcessWindowMessage(HWND hwnd, UINT Msg, WPARAM wParam, LPARAM lPa
return 0;
}
case WM_CLOSE:
ShowWindow(SW_HIDE);
return g_Busy;
case WM_NOTIFY_OPERATIONCOMPLETED:
if (!g_Busy && !IsWindowVisible())
SendMessage(WM_CLOSE, 0, 0);
break;
case DM_REPOSITION:
EmulateDialogReposition(hwnd); // We are not a real dialog, we need help from a real one
break;
case WM_COMMAND:
OnCommand(wParam, lParam);
break;
@ -337,6 +357,22 @@ CMainWindow::ProcessWindowMessage(HWND hwnd, UINT Msg, WPARAM wParam, LPARAM lPa
switch (data->code)
{
case TVN_ITEMEXPANDING:
{
if (data->hwndFrom == m_TreeView->m_hWnd)
{
// APPWIZ-mode: forbid item collapse.
// FIXME: Prevent collapse (COMCTL32 is buggy)
// https://bugs.winehq.org/show_bug.cgi?id=53727
if (m_bAppwizMode && (((LPNMTREEVIEW)lParam)->action & TVE_TOGGLE) == TVE_COLLAPSE)
{
theResult = TRUE;
return TRUE; // Handled
}
}
break;
}
case TVN_SELCHANGED:
{
if (data->hwndFrom == m_TreeView->m_hWnd)
@ -556,9 +592,12 @@ CMainWindow::OnCommand(WPARAM wParam, LPARAM lParam)
break;
case ID_RESETDB:
{
CUpdateDatabaseMutex lock;
m_Db->RemoveCached();
UpdateApplicationsList(SelectedEnumType, bReload);
break;
}
case ID_HELP:
MessageBoxW(L"Help not implemented yet", NULL, MB_OK);
@ -586,8 +625,16 @@ CMainWindow::UpdateStatusBarText()
if (m_StatusBar)
{
CStringW szBuffer;
szBuffer.Format(IDS_APPS_COUNT, m_ApplicationView->GetItemCount());
// Append the number of selected apps if not in APPWIZ-mode.
if (!m_bAppwizMode)
{
CStringW szBuffer2;
szBuffer2.Format(IDS_APPS_SELECT_COUNT, m_Selected.GetCount());
szBuffer += szBuffer2;
}
szBuffer.Format(IDS_APPS_COUNT, m_ApplicationView->GetItemCount(), m_Selected.GetCount());
m_StatusBar->SetText(szBuffer);
}
}
@ -612,6 +659,13 @@ CMainWindow::AddApplicationsToView(CAtlList<CAppInfo *> &List)
VOID
CMainWindow::UpdateApplicationsList(AppsCategories EnumType, BOOL bReload, BOOL bCheckAvailable)
{
// Only installed applications should be enumerated in APPWIZ-mode.
if (m_bAppwizMode && !IsInstalledEnum(EnumType))
{
ATLASSERT(FALSE && "Should not be called in APPWIZ-mode");
return;
}
bUpdating = TRUE;
if (HCURSOR hCursor = LoadCursor(NULL, IDC_APPSTARTING))
@ -650,6 +704,9 @@ CMainWindow::UpdateApplicationsList(AppsCategories EnumType, BOOL bReload, BOOL
}
else if (IsAvailableEnum(EnumType))
{
// We shouldn't get there in APPWIZ-mode.
ATLASSERT(!m_bAppwizMode);
if (bReload)
m_Db->UpdateAvailable();
@ -709,8 +766,7 @@ CMainWindow::GetWndClassInfo()
HWND
CMainWindow::Create()
{
CStringW szWindowName;
szWindowName.LoadStringW(IDS_APPTITLE);
const CStringW szWindowName(MAKEINTRESOURCEW(m_bAppwizMode ? IDS_APPWIZ_TITLE : IDS_APPTITLE));
RECT r = {
(SettingsInfo.bSaveWndPos ? SettingsInfo.Left : CW_USEDEFAULT),
@ -760,7 +816,7 @@ CMainWindow::InstallApplication(CAppInfo *Info)
{
if (DownloadApplication(Info))
{
UpdateApplicationsList(SelectedEnumType);
//FIXME: Delay UpdateApplicationsList(SelectedEnumType); until install completes
return TRUE;
}
}

View file

@ -89,8 +89,6 @@ class CAppRichEdit : public CUiWindow<CRichEdit>
LoadAndInsertText(UINT uStringID, DWORD StringFlags);
VOID
InsertTextWithString(UINT StringID, const CStringW &Text, DWORD TextFlags);
VOID
SetWelcomeText();
};
int
@ -178,8 +176,8 @@ class CAppInfoDisplay : public CUiWindow<CWindowImpl<CAppInfoDisplay>>
VOID
ShowAppInfo(CAppInfo *Info);
VOID
SetWelcomeText();
void
SetWelcomeText(bool bAppwiz);
VOID
OnCommand(WPARAM wParam, LPARAM lParam);
@ -195,7 +193,7 @@ class CAppsListView : public CUiWindow<CWindowImpl<CAppsListView, CListView>>
};
BOOL bIsAscending = TRUE;
BOOL bHasCheckboxes = FALSE;
bool bHasCheckboxes = false;
INT ItemCount = 0;
INT CheckedItemCount = 0;
@ -224,8 +222,9 @@ class CAppsListView : public CUiWindow<CWindowImpl<CAppsListView, CListView>>
VOID
SetWatermark(const CStringW &Text);
VOID
SetCheckboxesVisible(BOOL bIsVisible);
void
ShowCheckboxes(bool bShow);
VOID
ColumnClick(LPNMLISTVIEW pnmv);
@ -293,10 +292,11 @@ class CMainToolbar : public CUiWindow<CToolbar<>>
HWND
Create(HWND hwndParent);
VOID
HideButtonCaption();
VOID
ShowButtonCaption();
void
ShowButtonCaption(bool bShow);
void
UpdateMaxButtonsWidth();
DWORD
GetMaxButtonsWidth() const;

View file

@ -52,12 +52,13 @@ class CMainWindow : public CWindowImpl<CMainWindow, CWindow, CFrameWinTraits>
CUiWindow<CStatusBar> *m_StatusBar = NULL;
CApplicationView *m_ApplicationView = NULL;
friend class CApplicationView;
CAppDB *m_Db;
CAtlList<CAppInfo *> m_Selected;
BOOL bUpdating = FALSE;
BOOL bAppwizMode;
BOOL m_bAppwizMode;
HTREEITEM hRootItemInstalled;
CStringW szSearchPattern;

View file

@ -30,6 +30,8 @@ VOID
CopyTextToClipboard(LPCWSTR lpszText);
VOID
ShowPopupMenuEx(HWND hwnd, HWND hwndOwner, UINT MenuID, UINT DefaultItem, POINT *Point = NULL);
VOID
EmulateDialogReposition(HWND hwnd);
BOOL
StartProcess(const CStringW &Path, BOOL Wait);
BOOL
@ -115,3 +117,32 @@ GetProgramFilesPath(CStringW &Path, BOOL PerUser, HWND hwnd = NULL);
template <class T> class CLocalPtr : public CHeapPtr<T, CLocalAllocator>
{
};
struct CScopedMutex
{
HANDLE m_hMutex;
CScopedMutex(LPCWSTR Name, UINT Timeout = INFINITE, BOOL InitialOwner = FALSE)
{
m_hMutex = CreateMutexW(NULL, InitialOwner, Name);
if (m_hMutex && !InitialOwner)
{
DWORD wait = WaitForSingleObject(m_hMutex, Timeout);
if (wait != WAIT_OBJECT_0 && wait != WAIT_ABANDONED)
{
CloseHandle(m_hMutex);
m_hMutex = NULL;
}
}
}
~CScopedMutex()
{
if (m_hMutex)
{
ReleaseMutex(m_hMutex);
CloseHandle(m_hMutex);
}
}
bool Acquired() const { return m_hMutex != NULL; }
};

View file

@ -13,4 +13,17 @@
#include "misc.h"
#include "configparser.h"
extern LONG g_Busy;
#define WM_NOTIFY_OPERATIONCOMPLETED (WM_APP + 0)
#define MAINWINDOWCLASSNAME L"ROSAPPMGR2"
#define MAINWINDOWMUTEX szWindowClass
#define UPDATEDBMUTEX ( MAINWINDOWCLASSNAME L":UpDB" )
struct CUpdateDatabaseMutex : public CScopedMutex
{
CUpdateDatabaseMutex() : CScopedMutex(UPDATEDBMUTEX, 1000 * 60 * 10, FALSE) { };
};
#endif /* _RAPPS_H */

View file

@ -67,7 +67,6 @@
/* Menus */
#define IDR_MAINMENU 500
#define IDR_LINKMENU 501
#define IDR_APPLICATIONMENU 502
/* Menu items */
#define ID_EXIT 550
@ -88,40 +87,46 @@
/* Messages */
#define ID_ACTIVATE_APPWIZ 600
/* Strings */
/* Banners */
#define IDS_APPTITLE 100
#define IDS_SEARCH_TEXT 101
#define IDS_APPS_COUNT 102
#define IDS_WELCOME_TITLE 103
#define IDS_WELCOME_TEXT 104
#define IDS_WELCOME_URL 105
#define IDS_INSTALLED 106
#define IDS_AVAILABLEFORINST 107
#define IDS_UPDATES 108
#define IDS_APPLICATIONS 109
#define IDS_CHOOSE_FOLDER_TEXT 110
#define IDS_CHOOSE_FOLDER_ERROR 111
#define IDS_URL_INVALID 112
#define IDS_APP_REG_REMOVE 113
#define IDS_INFORMATION 114
#define IDS_UNABLE_TO_REMOVE 115
#define IDS_UNABLE_TO_DOWNLOAD 116
#define IDS_UNABLE_TO_DOWNLOAD2 117
#define IDS_UNABLE_TO_QUERY_CERT 118
#define IDS_INTEG_CHECK_TITLE 119
#define IDS_INTEG_CHECK_FAIL 120
#define IDS_INTERRUPTED_DOWNLOAD 121
#define IDS_UNABLE_TO_WRITE 122
#define IDS_INSTALL_SELECTED 123
#define IDS_UNABLE_TO_INSTALL 124
#define IDS_SELECTEDFORINST 125
#define IDS_MISMATCH_CERT_INFO 126
#define IDS_UNABLE_PATH 127
#define IDS_APP_AUTHORS 128
#define IDS_APP_DISPLAY_DETAILS 129
#define IDS_APP_DISPLAY_LIST 130
#define IDS_APP_DISPLAY_TILE 131
#define IDS_NO_SEARCH_RESULTS 132
#define IDS_APP_AUTHORS 101
#define IDS_WELCOME_TITLE 102
#define IDS_WELCOME_TEXT 103
#define IDS_WELCOME_URL 104
#define IDS_APPWIZ_TITLE 105
#define IDS_APPWIZ_TEXT1 106
#define IDS_APPWIZ_TEXT2 107
/* Strings */
#define IDS_SEARCH_TEXT 110
#define IDS_APPS_COUNT 111
#define IDS_APPS_SELECT_COUNT 112
#define IDS_INSTALLED 113
#define IDS_AVAILABLEFORINST 114
#define IDS_UPDATES 115
#define IDS_APPLICATIONS 116
#define IDS_CHOOSE_FOLDER_TEXT 117
#define IDS_CHOOSE_FOLDER_ERROR 118
#define IDS_URL_INVALID 119
#define IDS_APP_REG_REMOVE 120
#define IDS_INFORMATION 121
#define IDS_UNABLE_TO_REMOVE 122
#define IDS_UNABLE_TO_DOWNLOAD 123
#define IDS_UNABLE_TO_DOWNLOAD2 124
#define IDS_UNABLE_TO_QUERY_CERT 125
#define IDS_INTEG_CHECK_TITLE 126
#define IDS_INTEG_CHECK_FAIL 127
#define IDS_INTERRUPTED_DOWNLOAD 128
#define IDS_UNABLE_TO_WRITE 129
#define IDS_INSTALL_SELECTED 130
#define IDS_UNABLE_TO_INSTALL 131
#define IDS_SELECTEDFORINST 132
#define IDS_MISMATCH_CERT_INFO 133
#define IDS_UNABLE_PATH 134
#define IDS_APP_DISPLAY_DETAILS 135
#define IDS_APP_DISPLAY_LIST 136
#define IDS_APP_DISPLAY_TILE 137
#define IDS_NO_SEARCH_RESULTS 138
/* Tooltips */
#define IDS_TOOLTIP_INSTALL 200

View file

@ -43,22 +43,6 @@ BEGIN
END
END
IDR_APPLICATIONMENU MENU
BEGIN
POPUP ""
BEGIN
MENUITEM "&Слагане\tCtrl+Enter", ID_INSTALL
MENUITEM "&Махане\tCtrl+Del", ID_UNINSTALL
MENUITEM "&Промяна", ID_MODIFY
MENUITEM SEPARATOR
MENUITEM "Пр&емахване от регистъра", ID_REGREMOVE
MENUITEM SEPARATOR
MENUITEM "О&пресняване\tF5", ID_REFRESH
MENUITEM SEPARATOR
MENUITEM "Update Data&base\tCtrl+F5", ID_RESETDB
END
END
IDD_SETTINGS_DIALOG DIALOGEX 0, 0, 254, 265
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Настройки"
@ -188,11 +172,20 @@ STRINGTABLE
BEGIN
IDS_APPTITLE "Управителят за приложения на РеактОС"
IDS_APP_AUTHORS "Copyright 2009 Dmitry Chapyshev"
IDS_SEARCH_TEXT "Търсене"
IDS_APPS_COUNT "Брой приложения: %d; Selected: %d"
IDS_WELCOME_TITLE "Управителят на приложенията на РеактОС ви приветства"
IDS_WELCOME_TEXT "Изберете раздел от лявата страна, след което изберете приложение за слагане или премахване.\nСтраницата на РеактОС: "
IDS_WELCOME_URL "https://reactos.org"
IDS_APPWIZ_TITLE "Add/Remove Programs"
IDS_APPWIZ_TEXT1 "Choose ""Applications"" or ""Updates"" to view the list of applications or updates installed on your system."
IDS_APPWIZ_TEXT2 "To remove a program or to modify its installed components, select it from the list and click on ""Uninstall"" or ""Modify""."
END
STRINGTABLE
BEGIN
IDS_SEARCH_TEXT "Търсене…"
IDS_APPS_COUNT "Брой приложения: %d"
IDS_APPS_SELECT_COUNT "; Selected: %d"
IDS_INSTALLED "Сложено"
IDS_AVAILABLEFORINST "Налично за слагане"
IDS_UPDATES "Обновления"

View file

@ -44,22 +44,6 @@ BEGIN
END
END
IDR_APPLICATIONMENU MENU
BEGIN
POPUP ""
BEGIN
MENUITEM "&Instalovat\tCtrl+Enter", ID_INSTALL
MENUITEM "&Odinstalovat\tCtrl+Del", ID_UNINSTALL
MENUITEM "&Změnit", ID_MODIFY
MENUITEM SEPARATOR
MENUITEM "Odstranit z r&egistru", ID_REGREMOVE
MENUITEM SEPARATOR
MENUITEM "Ob&novit\tF5", ID_REFRESH
MENUITEM SEPARATOR
MENUITEM "Aktualizovat data&bázi\tCtrl+F5", ID_RESETDB
END
END
IDD_SETTINGS_DIALOG DIALOGEX 0, 0, 250, 265
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Nastavení"
@ -189,11 +173,20 @@ STRINGTABLE
BEGIN
IDS_APPTITLE "ReactOS Správce aplikací"
IDS_APP_AUTHORS "Copyright 2009 Dmitry Chapyshev"
IDS_SEARCH_TEXT "Hledat…"
IDS_APPS_COUNT "Počet aplikací: %d; Vybráno: %d"
IDS_WELCOME_TITLE "Vítejte v ReactOS Správci aplikací!\n\n"
IDS_WELCOME_TITLE "Vítejte v ReactOS Správci aplikací!"
IDS_WELCOME_TEXT "Na levé straně zvolte kategorii, pak vpravo zvolte aplikaci, která bude nainstalována nebo odinstalována.\nWebová stránka ReactOS: "
IDS_WELCOME_URL "https://reactos.org"
IDS_APPWIZ_TITLE "Add/Remove Programs"
IDS_APPWIZ_TEXT1 "Choose ""Applications"" or ""Updates"" to view the list of applications or updates installed on your system."
IDS_APPWIZ_TEXT2 "To remove a program or to modify its installed components, select it from the list and click on ""Uninstall"" or ""Modify""."
END
STRINGTABLE
BEGIN
IDS_SEARCH_TEXT "Hledat…"
IDS_APPS_COUNT "Počet aplikací: %d"
IDS_APPS_SELECT_COUNT "; Vybráno: %d"
IDS_INSTALLED "Nainstalováno"
IDS_AVAILABLEFORINST "Lze instalovat"
IDS_UPDATES "Aktualizace"

View file

@ -46,22 +46,6 @@ BEGIN
END
END
IDR_APPLICATIONMENU MENU
BEGIN
POPUP ""
BEGIN
MENUITEM "&Installieren\tCtrl+Enter", ID_INSTALL
MENUITEM "&Deinstallieren\tCtrl+Del", ID_UNINSTALL
MENUITEM "Ä&ndern", ID_MODIFY
MENUITEM SEPARATOR
MENUITEM "Aus R&egistry entfernen", ID_REGREMOVE
MENUITEM SEPARATOR
MENUITEM "Aktualisie&ren\tF5", ID_REFRESH
MENUITEM SEPARATOR
MENUITEM "Daten&bank aktualisieren\tCtrl+F5", ID_RESETDB
END
END
IDD_SETTINGS_DIALOG DIALOGEX 0, 0, 250, 265
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Einstellungen"
@ -191,11 +175,20 @@ STRINGTABLE
BEGIN
IDS_APPTITLE "ReactOS-Anwendungsmanager"
IDS_APP_AUTHORS "Copyright 2009 Dmitry Chapyshev"
IDS_SEARCH_TEXT "Suche…"
IDS_APPS_COUNT "Anzahl der Anwendungen: %d, ausgewählt: %d"
IDS_WELCOME_TITLE "Willkommen im ReactOS-Anwendungsmanager!\n\n"
IDS_WELCOME_TITLE "Willkommen im ReactOS-Anwendungsmanager!"
IDS_WELCOME_TEXT "Wählen Sie links eine Kategorie und dann eine Anwendung um sie zu installieren oder zu deinstallieren.\nReactOS-Webseite: "
IDS_WELCOME_URL "https://reactos.org"
IDS_APPWIZ_TITLE "Add/Remove Programs"
IDS_APPWIZ_TEXT1 "Choose ""Applications"" or ""Updates"" to view the list of applications or updates installed on your system."
IDS_APPWIZ_TEXT2 "To remove a program or to modify its installed components, select it from the list and click on ""Uninstall"" or ""Modify""."
END
STRINGTABLE
BEGIN
IDS_SEARCH_TEXT "Suche…"
IDS_APPS_COUNT "Anzahl der Anwendungen: %d"
IDS_APPS_SELECT_COUNT "; ausgewählt: %d"
IDS_INSTALLED "Installiert"
IDS_AVAILABLEFORINST "Zur Installation verfügbar"
IDS_UPDATES "Aktualisierungen"

View file

@ -46,22 +46,6 @@ BEGIN
END
END
IDR_APPLICATIONMENU MENU
BEGIN
POPUP ""
BEGIN
MENUITEM "&Install\tCtrl+Enter", ID_INSTALL
MENUITEM "&Uninstall\tCtrl+Del", ID_UNINSTALL
MENUITEM "&Modify", ID_MODIFY
MENUITEM SEPARATOR
MENUITEM "R&emove from Registry", ID_REGREMOVE
MENUITEM SEPARATOR
MENUITEM "&Refresh\tF5", ID_REFRESH
MENUITEM SEPARATOR
MENUITEM "Update Data&base\tCtrl+F5", ID_RESETDB
END
END
IDD_SETTINGS_DIALOG DIALOGEX 0, 0, 250, 265
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Settings"
@ -191,11 +175,20 @@ STRINGTABLE
BEGIN
IDS_APPTITLE "ReactOS Applications Manager"
IDS_APP_AUTHORS "Copyright 2009 Dmitry Chapyshev"
IDS_SEARCH_TEXT "Search…"
IDS_APPS_COUNT "Applications count: %d; Selected: %d"
IDS_WELCOME_TITLE "Welcome to ReactOS Applications Manager!\n\n"
IDS_WELCOME_TITLE "Welcome to ReactOS Applications Manager!"
IDS_WELCOME_TEXT "Choose a category on the left, then choose an application to install or uninstall.\nReactOS Web Site: "
IDS_WELCOME_URL "https://reactos.org"
IDS_APPWIZ_TITLE "Add/Remove Programs"
IDS_APPWIZ_TEXT1 "Choose ""Applications"" or ""Updates"" to view the list of applications or updates installed on your system."
IDS_APPWIZ_TEXT2 "To remove a program or to modify its installed components, select it from the list and click on ""Uninstall"" or ""Modify""."
END
STRINGTABLE
BEGIN
IDS_SEARCH_TEXT "Search…"
IDS_APPS_COUNT "Applications count: %d"
IDS_APPS_SELECT_COUNT "; Selected: %d"
IDS_INSTALLED "Installed"
IDS_AVAILABLEFORINST "Available for installation"
IDS_UPDATES "Updates"

Some files were not shown because too many files have changed in this diff Show more