Commit Graph
3568 Commits
Author SHA1 Message Date
Eric Kohl 93bd77f1f7 [NETSH] Use the right index in MatchTagsInCmdLine 2026-05-30 21:02:53 +02:00
Eric Kohl 8f5639a9bd [NETSH] Remove quotation marks from quoted arguments
Add support for quoted strings to the script file interpreter.
2026-05-30 16:29:53 +02:00
Katayama Hirofumi MZ 1cfcfce8cd [MSPAINT] Support grayscale palette (#9067)
Preparation for complete
monochrome support.
JIRA issue: CORE-15990
- Add IDM_COLORSGRAYSCALE
  and IDM_COLORSMONOCHROME
  menu items.
- Add PAL_GRAYSCALE and
  PAL_MONOCHROME palette
  modes.
- Add PaletteModel::CreateDitherBrush
  helper function to create a
  dithered brush.
- Use the dithered brush on
  PAL_MONOCHROME in drawing
  the palette window.
2026-05-29 20:20:18 +09:00
Katayama Hirofumi MZ d08a581eb1 [EXPLORER] Implement ShowUndockMenuItem (#9068)
Follow-up of #9036.
ShowUndockMenuItem function
will detect system undocking ability.
JIRA issue: CORE-10675
- Do #include <cfgmgr32.h> in
  startmnusite.cpp.
- Implement ShowUndockMenuItem
  by using
  setupapi!CM_Is_Dock_Station_Present
  function.
2026-05-29 12:56:00 +09:00
Václav Zouzalík 3357607151 [CHCP] Update Czech (cs-CZ) and Slovak (sk-SK) translations (#8989) 2026-05-28 21:32:37 +03:00
Thomas Anderson 9036f5b305 [MSCTFIME] Add French (fr-FR) translation (#8953) 2026-05-28 15:32:12 +03:00
Václav Zouzalík 0db146f8c0 [HELP] Add Czech (cs-CZ) translation (#8933) 2026-05-28 15:08:37 +03:00
Katayama Hirofumi MZ 628fc9d463 [EXPLORER][SDK] Implement some tray commands (#9036)
Make our tray window working as
Windows' one.
JIRA issue: CORE-10675
- Add REST_NOCLOSE restriction
  to CTrayWindow::DoExitWindows
  method.
- Add TRAYCMD_EJECT constant
  to <undocshell.h>.
- Implement TRAYCMD_STARTMENU,
  TRAYCMD_EJECT,
  TRAYCMD_CONTROL_PANEL, and
  TRAYCMD_PRINTERS_AND_FAXES
  tray commands.
- Add import to setupapi to use
  CM_Request_Eject_PC function.
2026-05-26 18:40:38 +09:00
Whindmar Saksit f5a7d89955 [RAPPS] Use the package name if REGNAME is not set when uninstalling (#9058) 2026-05-25 22:21:20 +02:00
Eric Kohl 2e13f97a62 [DHCPCSVC][REACTOS] Pass the SendParams parameter to the RequestParams server function 2026-05-24 10:58:01 +02:00
Doug Lyons 71540fda3c [CHKDSK][FMIFS]Improve chkdsk output messages (#8946)
CORE-20573

Improve chkdsk output when failing to complete successfully by adding the returned error code.
Return status code from fmifs/chkdsk.c in the "modifier" parameter.
If the error returned is STATUS_DISK_CORRUPT_ERROR then display a message that running again may fix it.
2026-05-23 19:46:24 -05:00
Eric Kohl 60c8612e73 [DHCPCSVC] Improve debug message and parameter checks for DhcpRequestParams 2026-05-23 23:43:26 +02:00
Eric Kohl 7dbfc3f2b6 [DHCPCSVC][PSDK] Add parameter checks to DhcpRegisterParamChange
Also add the required definition of DHCPCAPI_REGISTER_HANDLE_EVENT.
2026-05-23 16:26:32 +02:00
Eric Kohl 3733f5f71e [DHCPCSVC] Add DhcpDeRegisterParamChange and DhcpRegisterParamChange stubs 2026-05-23 14:49:29 +02:00
Nguyen Duc Thinh 20b89d5413 [TRANSLATION] Add Vietnamese (vi-VN) translation (#9001)
Add Vietnamese translation for Calc, Solitaire, Notepad, RAPPS, Setup and Explorer
2026-05-22 11:39:34 +00:00
Jose Carlos Jesus 9a9f312f88 [WINLOGON] Update Portuguese (pt-PT) translation (#8976) 2026-05-20 18:26:18 +03:00
Hasan Eliküçük 81e6f50848 [TRANSLATION] Update and improve Turkish (tr-TR) translation (#9018)
- [REGEDIT] Update and improve Turkish (tr-TR) translation
- [TASKMGR] Update Turkish (tr-TR) translation
- [CMD] Update Turkish (tr-TR) translation
- [CABVIEW] Update Turkish (tr-TR) translation
- [BROWSEUI] Update Turkish (tr-TR) translation
2026-05-19 18:50:18 +03:00
Hasan Eliküçük 743dab2fbc [FONTVIEW] Update Turkish (tr-TR) translation (#9011) 2026-05-19 16:22:31 +03:00
Katayama Hirofumi MZ 146e1415d0 [MSPAINT] Update cursor shape for brush and rubber (#8974)
Improve UI/UX by updating mouse
cursor shape.
JIRA issue: CORE-20520
- Add CStyledCursor class.
- Enhance CCanvasWindow::OnSetCursor
  for TOOL_BRUSH and TOOL_RUBBER.
- Add CCanvasWindow::m_hBrushCursor
  CCanvasWindow::m_hRubberCursor to
  keep cursor shapes.
- Send WM_SETCURSOR from ToolsModel
  to update the cursor shape.
Co-authored-by: Hermès BÉLUSCA - MAÏTO <[email protected]>
2026-05-19 10:23:58 +09:00
Eric Kohl fb47d37a49 [DHCPCSVC][PSDK][IDL] Improve DhcpRequestParams and add DhcpUndoRequestParams stub
Add a call into the server side for DhcpRequestParams.
2026-05-17 13:16:30 +02:00
Katayama Hirofumi MZ 4e2cca167d [WINLOGON] Optimize StartLsass and StartServicesManager (#9016)
Optimize for speed.
JIRA issue: N/A
Do not initialize the STARTUPINFO member, which is already
filled with zeros, with zeros, in StartLsass and
StartServicesManager functions.
Co-authored-by: Hermès BÉLUSCA - MAÏTO <[email protected]>
2026-05-17 08:42:32 +09:00
Katayama Hirofumi MZ 99252d7f94 [REACTOS] Add WS_TABSTOP to IDD_SUMMARYPAGE IDC_CONFIRM_INSTALL (#9014)
Due to resource compiler (windres)'s
bug, WS_TABSTOP style wasn't added
to IDC_CONFIRM_INSTALL checkbox
(I've confirmed WS_TABSTOP lackness
on reactos.exe with Resource Hacker
and RisohEditor). This PR will improve
keyboard usability.
JIRA issue: N/A
- Add WS_TABSTOP style to
  IDC_CONFIRM_INSTALL checkbox
  in IDD_SUMMARYPAGE resource
  dialog.
2026-05-17 06:36:00 +09:00
Hermès Bélusca-Maïto eec8c97708 [USERINIT] In LiveCD/"MiniNT" mode, start the shell with a suitable environment block
Using `userenv!CreateEnvironmentBlock()` when starting the shell ensures
that, even if it's started as LocalSystem, its environment inherits the
"dynamical" environment variables created by SMSS at runtime (stored in
`HKLM\SYSTEM\CurrentControlSet\Session Manager\Environment`).

In ReactOS/Windows PE "MiniNT" mode, the Winlogon environment doesn't
contain these values, and doesn't start the Setup with this augmented
environment. (This is compatible with what Windows does, on WinPE or
during a clean installation.)
Winlogon creates an augmented environment only when a user logs in and
starts its shell (standard boot), which isn't the case in "MiniNT" mode.
It is thus the responsibility of the module that starts the shell instead
to do it: in ReactOS' case, userinit.exe in LiveCD mode.

As a result, we get access to the `COMPUTERNAME`, `NUMBER_OF_PROCESSORS`,
`OS`, and `PROCESSOR_*` environment variables, amongst others.
2026-05-15 19:16:59 +02:00
Hermès Bélusca-Maïto 9f5b0f1761 [USERINIT] Minor nits for StartShell() and friends; remove shell32 dependency 2026-05-15 19:16:58 +02:00
Eric Kohl 4bb73fe3c9 [NETSH][REACTOS] Improve MatchTagsInCmdLine and add NsGetIfNameFromFriendlyName stubs.c
These functions are used by the WinXP ifmon.dll when the 'interface ip set address' command is used.
2026-05-14 15:19:50 +02:00
Whindmar Saksit 6644a55343 [RAPPS] Automatically install package dependencies (#8963) 2026-05-14 13:23:40 +02:00
Ahmed Arif b3a0868a18 [DHCPCSVC] Fix stop_selecting truncated from time_t to int on 64-bit (#8996)
This fixes a bug noticed during ARM64 bringup where DHCP never completed. In dhcpoffer, `stop_selecting` is declared int (32-bit) but assigned two time_t operands of 64-bit. 

The truncated value breaks the timeout, leaving DHCP stuck in S_SELECTING. This is masked on AMD64 because the RTC is implemented there and `time()` returns values that fit in 32 bits. On ARM64 the RTC isn't implemented yet, exposing the truncation.

CORE-18200
2026-05-14 12:26:28 +03:00
Eric Kohl 858b8fd42c [NETSH] Do not split arguments at whitespace between quotation marks 2026-05-13 23:35:09 +02:00
Hermès Bélusca-Maïto 51c32094af [SETUP:REACTOS] GUI setup: Revamp the Finish/Reboot page; re-enable auto-reboot
Add also an Abort page that is displayed when the user cancels the
1st-stage setup, or when an error occurs and installation is aborted.

- Rewrite the text, change the layout;

- When the installer is started without any Win32 shell, or the
  installation is running in unattended mode, the Finish/Abort
  pages only offer to restart the computer with a 15-second timeout
  countdown.
  If the user has opened programs with interactive windows in the
  meantime, the timeout countdown just pauses whenever the installer
  window is de-activated/unfocused; it restarts when the window is
  re-activated. (This currently doesn't work in ReactOS due to a bug
  in the `WM_ACTIVATE` message delivery.)

  If, on the contrary, the installer is started by the user when a
  Win32 shell is running, the Finish/Abort page offers to either restart
  the computer "now", or postpone the restart to later (when the user
  manually restarts the computer); no reboot countdown is present there.

- Disable/hide the "Back" button for the Install processing page.
2026-05-12 00:27:57 +02:00
Hermès Bélusca-Maïto 310724e3e1 [SETUP:REACTOS] Improve the DisplayMessageV, SetWindowResTextW, and SetWindowResPrintfVW helpers
- In `SetWindowResTextW()` and `SetWindowResPrintfVW()`, don't assume a
  fixed size of 256 characters max for the retrieved resource strings,
  but allocate a suitably-sized buffer IF the resource string is longer
  than the fixed buffer. (Use the fixed buffer only if the string is shorter.)

- Introduce two helpers `LoadAllocStringW()` and `FormatAllocStringWV()`,
  based on existing code from `DisplayMessageV()`, and use these for
  `DisplayMessageV()`, `SetWindowResTextW()`, and `SetWindowResPrintfVW()`.
2026-05-12 00:26:58 +02:00
Hermès Bélusca-Maïto 630369f893 [SETUP:REACTOS] Fix some translations
- Add missing translations in the Hindi file for:
  `IDD_UPDATEREPAIRPAGE` and `IDD_SUMMARYPAGE` dialogs,
  and `IDS_INSTALLATION_*` and `IDS_PARTITION_*` strings.
  Addendum to commit f5960cea70 (PR #951).

- Update some sentences in the `IDD_UPDATEREPAIRPAGE` dialog.

- Harmonize the length of the `IDD_DEVICEPAGE` dialog comboboxes
  amongst all the translations.
2026-05-12 00:26:58 +02:00
Eric Kohl 425ea0378b [NETSH][REACTOS] Add MatchTagsInCmdLine stub
MatchTagsInCmdLine is similar to PreprocessCommand except that the parameters dwMinArgs and dwMaxArgs are missing.
2026-05-11 22:56:06 +02:00
Timo Kreuzer 4bf2a30395 [WIDL] Remove a hack that inserted WIN32_LEAN_AND_MEAN into headers
This was supposedly to improve compile times, but it breaks our headers.
2026-05-11 18:21:34 +00:00
Katayama Hirofumi MZ 58fa10d453 [NOTEPAD] Minor formatting (#8965)
Follow-up of #8938.
JIRA issue: N/A
Just indent some lines of a switch block in ReactOS style.
2026-05-09 20:35:51 +09:00
Katayama Hirofumi MZ a2e1e1d963 [NOTEPAD] Make loading file faster (#8938)
Performance improvement. This PR
will improve the speed of loading
a large file.
JIRA issue: CORE-19898
- Change 2 passes to 1 pass on
  ANSI/UTF-8, omitting precise
  buffer size calculation.
- Change LocalReAlloc calls to
  LocalAlloc.
- ReadText function now returns
  HLOCAL and no longer takes
  phLocal.
2026-05-09 20:24:51 +09:00
Timo Kreuzer d2dc9355ab [CMAKE] Remove obsolete remove_definitions(-D_CRT_NON_CONFORMING_SWPRINTFS) 2026-05-07 06:27:58 +00:00
Timo Kreuzer b13e568d99 [CMAKE] Remove global _CRT_NON_CONFORMING_SWPRINTFS
Instead define it only in 3rd-party code where required.
Most of these will go away with future wine-syncs.
2026-05-07 06:27:58 +00:00
Timo Kreuzer 1cf31524d5 [REACTOS] Stop using non-conforming swprintf / vswprintf
Use the underscored versions instead.
2026-05-07 06:27:58 +00:00
Thomas Anderson 66ee8e6eee [REGEDIT] Fix cut off text in French (fr-FR) translation (#8944)
CORE-20169
2026-05-07 00:32:14 +03:00
Václav Zouzalík af895a116b [PING] Add Slovak (sk-SK) translation (#8784) 2026-05-06 15:50:11 +03:00
Eric Kohl d309745deb [NETSH] Add missing iphlpapi.h import 2026-05-03 20:05:13 +02:00
Vitaly Orekhov 688982d429 [SNDVOL32] Deduplicate dialog control retrieval code 2026-04-29 14:24:28 +03:00
Vitaly Orekhov a9051012e5 [SNDVOL32] Update copyright preamble
This time for `sndvol32.c`.
2026-04-29 14:23:36 +03:00
Hermès Bélusca-Maïto b2e33f26eb [REACTOS] Merge our bootcd and livecd into an all-in-one ReactOS BootCD (#7313)
CORE-9069, CORE-13525, RELEASE-11

This new BootCD contains the functionality of both the original bootcd
(text-mode 1st-stage installer) and the livecd (that will include the
1st-stage GUI installer later).
Our separate livecd ISOs become obsolete, and this completely removes
the need for the so-called "hybridcd" ISO.

Some details:

- The "hybridcd" build target is completely removed, since now the new
  BootCD *is* basically what we used to call "hybridcd".

- The "livecd" build target is kept so far (to minimize the code changes),
  but internally I start to refer to it as "LiveImage", and is reduced
  to a minimum.

  A minimal non-bootable "liveimg.iso" is built (but currently not
  included within the BootCD). Its purpose will be to implement the
  "ReactOS Live" functionality as a RAMDISK.
  (We currently don't support other file formats apart from ISO and
  flat disk for a RAMDISK).

  The "ReactOS Live" (non-RAMDISK) is implemented by adding to the
  BootCD file tree the files from the LiveImage.
  These files add two root directories, "Profiles" and "reactos"
  (which is the SystemRoot for the non-ramdisk LiveImage).

- The minimal text-mode ReactOS installation used for the 1st-stage
  installer, including USETUP itself, and the executable for the
  1st-stage GUI installer and the reactos.cab (installation source),
  are moved to the root directory called "i386" (ideally, one directory
  per architecture).

- The "bootcdregtest" target, i.e. the ISOs we feed our testbots with,
  are left untouched, i.e. they are only constituted of the 1st-stage
  text-mode installation only, but placed in a per-architecture root
  directory ("i386", etc. as for the bootcd).

- Remove the ACPI APIC/SMP entries from bootcd.ini. They will be made
  available via the Advanced Boot Options F8 menu in Debug builds, for
  testing purposes only, in a subsequent commit.

This commit is based upon an older SVN one:
svn path=/branches/setup_improvements/; revision=75273
2026-04-28 23:11:10 +02:00
Katayama Hirofumi MZ ffa1c541aa [MSCTFIME][CICERO] Implement CicProfile::GetActiveLanguageProfile (#8869)
Supporting CTF IMEs.
JIRA issue: CORE-19360
- Add base/ctf/cicero/ciciface.h to
  add CicInterface_RefCnt template
  class.
- Add CicProfile::
  LanguageProfilesCallback callback
  function.
- Implement CicProfile::
  GetActiveLanguageProfile and
  CicProfile::IsIME functions.
2026-04-20 21:51:45 +09:00
Katayama Hirofumi MZ 1bdaeee30f [CICERO] Add CicFirstInFirstOut (cicfifo.h) (#8870)
Supporting CTF IMEs. This FIFO
will be used in TRANSMSG handling.
JIRA issue: CORE-19360
- Add base/ctf/cicero/cicfifo.h.
- Implement CicFirstInFirstOut
  template class.
2026-04-19 20:05:27 +09:00
Eric Kohl 89221f5d55 [DNSRSLVR][NETCFGX] Notify the dnscache service if the names list changed 2026-04-18 23:17:00 +02:00
Eric Kohl 0bd6afd1a8 [DHCPCSVC] Set the AddressType value for network interfaces
AddressType 0: Static address, DHCP provided address or static address from alternate configuration
AddressType 1: Automatic Private IP Address (APIPA)
2026-04-18 16:51:17 +02:00
Hermès Bélusca-Maïto aa8d624253 [SMSS] "BootDir" value creation: Fix fallback code
Addendum to commit c498d0930a.

`SmpTranslateSystemPartitionInformation()`: Reset the `DirInfo->Name.Buffer`
to use the `DirInfoBuffer` scratch area, before doing the OS boot drive letter
fallback. Otherwise, writing directly to `DirInfo->Name.Buffer` would
use its old value, that is going to be `NULL` when the calls to
`NtQueryDirectoryObject()` failed, and this would induce a memory access
crash.

Take also the opportunity to use structures embedding the
`KEY_VALUE_PARTIAL_INFORMATION` and `OBJECT_DIRECTORY_INFORMATION`
data headers, instead of straight `CHAR` arrays. This allows the
structures to use the correct memory alignments required by these
data headers.
2026-04-16 16:11:55 +02:00
Eric Kohl cbfc755c2f [DHCPSVC][PSDK][IDL] Add the DhcpAcquireParametersByBroadcast stub and remove the DhcpQueryHWInfo function 2026-04-13 01:06:31 +02:00