Commit Graph

553 Commits

Author SHA1 Message Date
Ivan Ivo
514506d8f5 [CHARMAP][MSPAINT][WELCOME] Add Croatian (hr-HR) translation (#8654)
All strings have been translated and reviewed for clarity, grammar,
and consistency with the existing Croatian translations used in ReactOS.
2026-02-14 13:00:34 +03:00
Hermès Bélusca-Maïto
9c0efba4b3 [USERINIT] Hide install option on LiveCD when no installer is available (#8614)
RELEASE-8
2026-01-22 21:48:32 +01:00
Chan Chilung
323a406fcf [BASE][CPL] Update Traditional Chinese (zh-TW) translation (#8581)
- [MSCONFIG] Update Traditional Chinese (zh-TW) translation
- [MSCONFIG_NEW] Update Traditional Chinese (zh-TW) translation
- [MSPAINT] Update Traditional Chinese (zh-TW) translation
- [NOTEPAD] Update Traditional Chinese (zh-TW) translation
- [RAPPS] Update Traditional Chinese (zh-TW) translation
- [SETUP:REACTOS] Update Traditional Chinese (zh-TW) translation
- [CPL:ACCESS] Update Traditional Chinese (zh-TW) translation
- [CPL:APPWIZ] Update Traditional Chinese (zh-TW) translation

Take into account documentation updates in b380d23d6f.
2026-01-15 18:28:54 +03:00
Tibor Lajos Füzi
01cbfff0ea [USETUP] Update Hungarian (hu-HU) translation (#8544) 2026-01-12 16:50:18 +03:00
Doug Lyons
0d7afe780e [SETUP][INF][FONTS] Revert FontSubstitutes for "MS Shell Dlg" back to "Tahoma" (#8533)
Partial revert of bac7d7f for TCPView Help | About https://jira.reactos.org/browse/CORE-15678 truncated text.
Fixes JIRA issue: CORE-20404.
2025-12-30 21:37:19 -06:00
Doug Lyons
bac7d7f5cd [SETUP][INF][FONTS] Change font substitutes for "MS Sans Serif" and "MS Shell Dlg" (#8481)
Change both of these from "Tahoma" to "Microsoft Sans Serif" for Latin Fonts only.
It is possible that other language types would benefit, but I am unable to test these.

CORE-15675 and CORE-15678 (Both Fixed.)
CORE-16435 (Improvements only. Not totally fixed.)
2025-12-20 22:31:36 -06:00
Hermès Bélusca-Maïto
ff87209e7c [REACTOS] Delay-load the setuplib DLL and control the path it's loaded from.
The setuplib DLL, used also by the text-mode USETUP, isn't placed in the
standard DLL search paths list. It isn't in the "current" directory nor
in the one where reactos.exe is, nor in the running OS' SystemRoot or
System32 directories.
The DLL is instead placed in the System32 sub-directory of the ReactOS
installation source. Note that this isn't a problem for USETUP, because
it is already started from that directory.

To control its loading, delay-load the DLL and use a delay-load hook,
following the technique explained in:
  https://stackoverflow.com/a/75325443
  https://devblogs.microsoft.com/oldnewthing/20170126-00/?p=95265

The hook is also invoked in case of loading failure, showing a more
user-friendly hard-error popup and killing the installer, instead of
throwing a debugger exception.
2025-11-13 17:00:46 +01:00
Adam Słaboń
8ecfbb3a8c [SETUPLIB] Fix system partition selection DPRINTs (#8336)
Some partition entries (such as those added by the CreateInsertBlankRegion function) may not have their Volume member allocated. This fixes the USETUP crash when such partitions are handled.
2025-08-14 17:40:52 +02:00
Hermès Bélusca-Maïto
9b7c788cd0 [SETUPLDR] Add support for architecture-specific "SourceDisksNames" section (#8249)
Will be used for installing specific drivers on x64
(e.g. the ACPI driver, see PR #8238).

Add also the ARM64 define in the SETUPLIB spapisup.h header.
2025-07-13 19:23:06 +02:00
Mas Ahmad Muhammad
a56e47fe60 [SETUP:REACTOS] Fix warning RC4206 in Indonesian (id-ID) translation (#8220)
Noticed by Katayama's comment from chat.reactos.org:

> Indonesian translation warning: base\setup\reactos\lang/id-ID(15): warning RC4206: title string too long; trunctated at 256

Fix problem by making the string length shorter, it's 245 chars now.
Addendum to 0.4.16-dev-862-g 7b5e004dd6.
2025-07-12 14:32:21 +03:00
Hermès Bélusca-Maïto
b401f547ae [NDK][ROSLOAD][ROSTESTS][SDK][WINE] Fix and use standard 'ReactOS' casing (#8163) 2025-06-22 22:49:54 +02:00
Hermès Bélusca-Maïto
2a0d98c2bc [DOSKEY][USETUP][KERNEL32][NTVDM][CONSRV][REGEXPL] Fix build (#8019)
Fix build after the move and update of private console API
definitions to wincon_undoc.h
2025-05-27 20:52:20 +02:00
Katayama Hirofumi MZ
6a905ae2e1 [REACTOS] Improve Japanese (ja-JP) translation (#7975)
JIRA issue: CORE-18706
Update base/setup/reactos/lang/ja-JP.rc.
2025-05-11 21:57:07 +09:00
Hermès Bélusca-Maïto
f135cab83e [SETUPLIB] Add a setuplib_static library, used for the dll and the unit-tests.
Since the setuplib.dll isn't available after installing ReactOS, build
instead a static library that is then used for the dll, and linked into
the setuplib_unittest, so that it can be run in our test-suite.

Addendum to commit d7c1d220.
2025-04-20 19:18:28 +02:00
Hermès Bélusca-Maïto
1b564c1ba8 [REACTOS] Use the RT_* resource type defines where possible (#6023)
And use the self-documenting `MAKELANGID(LANG_NEUTRAL, SUBLANG_NEUTRAL)`
instead of `0` for the `LDR_RESOURCE_INFO::Language` structure member.
2025-04-08 20:21:07 +02:00
Denis Robert
8c9f250587 [SETUP:REACTOS] Update French (fr-FR) translation (#7564)
Update French translation in base/setup/reactos/lang

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2025-03-24 22:26:07 +01:00
Mas Ahmad Muhammad
7b5e004dd6 [SETUP][USETUP] Update Indonesian (id-ID) translation (#7618)
Updating translation for: setup/reactos and setup/usetup.
2025-03-24 20:47:26 +01:00
Andrei Miloiu
5d30831fb8 [SETUP] Update Romanian (ro-RO) translation (#7660) 2025-03-24 19:05:11 +01:00
Hermès Bélusca-Maïto
8e53386de9 [SETUPLIB][REACTOS][USETUP] Don't export setup data. Make IsUnattendedSetup local to the installer. 2025-03-14 21:38:39 +01:00
Timo Kreuzer
3d516e71d3 [USETUP] Install rosload.exe 2025-02-04 16:45:48 +02:00
Katayama Hirofumi MZ
fe11f7a2e5 [REACTOS] Refresh old URLs (#7632)
URLs are getting old. We have to
update URLs for documentation
purpose.
JIRA issue: CORE-19963
- Refresh old URLs.
- Add " (DEAD_LINK)" labels
  to dead links.
- Use MS Learn links rather
  than MSDN ones.
- Some dead links revived by
  Web Archive.
- Don't change Wine Tests
  and Wine Sync.
- Don't change 3rd party libraries.
- Don't append "redirected" labels.
2025-01-28 13:36:45 +09:00
Hermès Bélusca-Maïto
4920e639f9 [SETUP:REACTOS] Revamp the Install-type page layout (#7581)
- Update the page title and subtitle.
- Embolden the types of installation.
- Introduce title and subtitle for the upgrade/repair page
  (not translated yet).
2024-12-31 12:33:27 +01:00
Hermès Bélusca-Maïto
8d00977681 [SETUP:REACTOS] Refactor the Welcome page (#7579)
- Rewrite the introductory text.
- Add a temporary (ReactOS-Alpha) informational message.
- Hide the "Back" button when the Welcome page is active, and
  show it back again when switching to the following ones.
2024-12-31 12:09:45 +01:00
Hermès Bélusca-Maïto
3b800165b0 [SETUP:REACTOS][SYSSETUP] Fix Shift-F10 cmd.exe invocation.
Pressing Shift-F10 to open cmd.exe when the setup program runs from
a different current directory than System32, now works correctly.

Use the 2nd CreateProcessW() `lpCommandLine` parameter, instead of the
1st parameter `lpApplicationName`, so as to use default path search.
The command-line buffer given to the 2nd-parameter can be temporarily
modified by CreateProcessW(), thus use an on-stack buffer.

https://learn.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-createprocessw#parameters
2024-12-24 12:22:42 +01:00
Hermès Bélusca-Maïto
d7c1d220b5 [SETUPLIB][REACTOS][USETUP] Turn setuplib into a DLL shared between TUI and GUI 1st-stage setups (#7523)
CORE-13525

Notes:
- Most of the exported functions have been turned from default cdecl to explicit stdcall / "NTAPI".
- The two InitializeSetup() phases have been collapsed to make the initialization simpler.

Average reductions (percentages; see PR #7523 for actual numbers):

x86 Debug builds:
reactos.exe: 35.1%
smss.exe   : 39.8%
Total (including setuplib.dll): 17.9%

x86 Release builds:
reactos.exe: 22.3%
smss.exe   : 25.0%
Total (including setuplib.dll): 10.6%

x64 Debug builds:
reactos.exe: 40.6%
smss.exe   : 41.6%
Total (including setuplib.dll): 20.0%

x64 Release builds:
reactos.exe: 22.8%
smss.exe   : 22.3%
Total (including setuplib.dll): 10.1%
2024-12-02 23:05:38 +01:00
Timo Kreuzer
53f498c968 [SDK][PSEH] Improve PSEH a bit
Add PSEH include dir globally, include pseh2.h from excpt.h and add compatibility macros to reduce hacks in 3rd-perty code.
2024-11-27 10:50:03 +02:00
Hermès Bélusca-Maïto
4aee0280f9 [SETUPLIB][REACTOS][USETUP] Finish unification of MBR extended and primary/logical partitions
Fixes previous attempt at commit 0ca4e6dcf, which was reverted by commit
bbdcc14b1 because the partitioning checks mistook unpartitioned disks as
GPT.

Addendum to commit 99f0937fd.

The partition-creation checks are unified for these partitions into one
single function. To prepare for GPT support, the specifics are put into
a separate MBRPartitionCreateChecks() helper, called for MBR disks by the
upper-level function. GPT disks will have a similar helper in the future.
2024-11-24 18:13:17 +01:00
Stanislav Motylkov
bbdcc14b1c [REACTOS] Temporarily revert 0ca4e6dcfa, as requested by Hermès
The setup mistakes the unpartitioned disk as GPT.
This reverts commit 0ca4e6dcfa.
2024-11-23 23:12:02 +01:00
Hermès Bélusca-Maïto
0ca4e6dcfa [SETUPLIB][REACTOS][USETUP] Finish unification of MBR extended and primary/logical partitions
Addendum to commmit 99f0937fd.

The partition-creation checks are unified for these partitions into one
single function. To prepare for GPT support, the specifics are put into
a separate MBRPartitionCreateChecks() helper, called for MBR disks by the
upper-level function. GPT disks will have a similar helper in the future.
2024-11-23 21:41:32 +01:00
Timo Kreuzer
31334ebcfe [SETUPLIB] Use proper SEH instead of nasty hacks
Addendum to commit 2268b3d
2024-11-18 10:23:50 +02:00
Hermès Bélusca-Maïto
6aa11ac494 [USETUP] Deduplicate code in SelectPartitionPage() 2024-11-10 18:45:58 +01:00
Hermès Bélusca-Maïto
5066818284 [USETUP] Deduplicate code in InstallDirectoryPage() 2024-11-10 18:45:57 +01:00
Hermès Bélusca-Maïto
8bb3e5a017 [USETUP] Minor simplifications in some branching code 2024-11-10 18:45:40 +01:00
Hermès Bélusca-Maïto
3ddb05d443 [SETUPLIB] GetSourcePaths(): Fix determination of the installation source path.
Refine the algorithm introduced in commit c560342f08 (r75667, r75676),
whereby the installation source path is based on the full image file path
of the installer program, and of the \SystemRoot symlink.

Also reverts commit 6f389a35db "Add a workaround for installing from USB drives"
CORE-17818

+ SAL2-annotate and add Doxygen comments.

----

In case the \SystemRoot full path prefixes the image file path,
use the resolved \SystemRoot as the installation source path.
Otherwise, use the image file path.

The \SystemRoot symlink target resolution needs full path reparsing,
because it can reference other symlinks. This is what happens, for
example when booting the installation from a removable hard-disk.
We can have:

         \SystemRoot ---> \Device\Harddisk1\Partition1\ReactOS
and:     \Device\Harddisk1\Partition1 ---> \Device\HarddiskVolume2
etc.
and we wish to resolve \SystemRoot to: \Device\HarddiskVolume2\ReactOS
instead of keeping the former version (using Harddisk1\Partition1).

We then verify whether it prefixes the image file path, which is
a fully reparsed path.
2024-10-23 23:19:58 +02:00
Hermès Bélusca-Maïto
eafa7c68b6 [SETUP:REACTOS] Improve/Add some translations 2024-10-21 15:54:02 +02:00
Hermès Bélusca-Maïto
467efcb423 [USETUP] Adjust translations of the BootLoaderRemovableDiskPageEntries page.
The page is shown only when the user wants to install the bootloader
on a removable disk; not when there was a problem while installing it.
2024-10-20 16:51:29 +02:00
Hermès Bélusca-Maïto
424278db3f [SETUP:REACTOS] Add bootloader installation support (#7310)
CORE-13525
2024-10-20 16:51:26 +02:00
Hermès Bélusca-Maïto
b3cd576737 [SETUPLIB][USETUP] Introduce a bootloader installation helper (#7310)
CORE-13525

This is done so that the caller doesn't need to know details
about particular architecture specifics, like VBR, MBR etc.

Extra checks and specific handling is also performed for supporting
bootloader installation on removable media:
- verify whether the media is a floppy or some other removable media,
- depending on which, a suitable file system is chosen,
- and if the media is not a floppy, do the supplemental partition
  verifications to determine whether the media is a "super-floppy"
  (in the partitioning sense).
2024-10-20 16:51:25 +02:00
Hermès Bélusca-Maïto
636e2e9172 [SETUPLIB] Introduce a helper for copying bootloader files (#7310)
This function could be generalized later to copy other files necessary
for the bootloader; removing also the currently hardcoded placement in
the installation source directory, and instead, using a configurable
path (specified in txtsetup.sif); etc.

Adapted from a commit by Timo Kreuzer (see PR #7420)

Co-Authored-By: Timo Kreuzer <timo.kreuzer@reactos.org>
2024-10-20 16:51:24 +02:00
Hermès Bélusca-Maïto
d6d3d0eacd [SETUPLIB] Add helpers to determine whether a disk is partitioned as a "super-floppy" (#7310) 2024-10-20 16:51:23 +02:00
Hermès Bélusca-Maïto
ad5d9aa28a [SETUPLIB] Add UNICODE_STRING versions of the pOpenDevice helpers (#7310)
+ Use a FILE_SHARE_ALL define. Based on a suggestion from Whindmar Saksit.
2024-10-20 16:51:16 +02:00
Timo Kreuzer
e4930be4ff [REACTOS] Use the ISO C and C++ conformant names: _wcsicmp, _stricmp
Stop using non-conforming wcsicmp, stricmp, strcasecmp
2024-10-20 14:12:25 +03:00
Serge Gautherie
54433319af [USETUP] CabinetExtractFile(): Do not overwrite Status value (#7456)
Addendum to 5d4d912 (r15403).
2024-10-16 12:20:41 +02:00
Timo Kreuzer
469d4dbbab [USETUP] Fix handling of 0 sized files in the cab 2024-09-20 14:08:13 +03:00
Hermès Bélusca-Maïto
a75ed2acd9 [SETUP:REACTOS] Add the update-registry code (#7222)
This code has been tested on Windows and works as expected.
2024-08-28 22:05:21 +02:00
Hermès Bélusca-Maïto
fd67017512 [SETUP:REACTOS] Add some SetWindowRes* helper functions 2024-08-28 22:03:05 +02:00
Hermès Bélusca-Maïto
5b07c33031 [USETUP] Update translations for some registry-related messages 2024-08-28 22:03:04 +02:00
Hermès Bélusca-Maïto
1573461cec [SETUP:REACTOS] Add partitioning and formatting support (#7159)
CORE-13525

- Newly-created partitions and unpartitioned space ar reinserted
  or updated in correct order in the tree-list. Volume-creation
  information data associated with the tree items is persisted
  across operations.

- Reliably delete data associated to tree-list items via the
  TVN_DELETEITEM notification.
  This allows simplifying the cleanup function; keeping simple
  the code that deletes items when deleting partitions, etc.

- Make the PrintPartitionData() function call itself recursively on
  extended partitions to display the sub-list of logical partitions.

- Handle the new partition size in MB the same way as in USETUP.

- Allow existing partitions/volumes to be re-formatted, using
  common code with the partition creation dialog.

- Allow selecting unpartitioned space or non-formatted partitions
  for installing ReactOS: unused space will automatically be
  partitioned and non-formatted partitions formatted (the user
  is prompted for choosing the file system).

- Correctly zero the progress-bar position when starting file copy.
- Add missing file copy error handler in FileCopyCallback:
  just copying what USETUP does.
2024-08-27 23:18:12 +02:00
Hermès Bélusca-Maïto
9b2b75df2b [SETUP:REACTOS] Collect some UI elements into a common UI_CONTEXT structure.
Handles to some install-page UI elements, used in the installation thread,
are collected into a UI_CONTEXT structure.
2024-08-27 23:18:08 +02:00
Hermès Bélusca-Maïto
58cad127dc [SETUP:REACTOS] treelist.h: Fix TreeList_GetStyle/TreeList_SetStyle(Ex) for C language 2024-08-27 23:18:07 +02:00