Commit Graph

1555 Commits

Author SHA1 Message Date
Hermès Bélusca-Maïto
68182b2a52
[USETUP] Partial revert of 8b94515b for the ESCAPE key in the UpgradeRepairPage() screen.
The AsciiChar of the ESCAPE key should be 0x1B instead of zero; however
this is not the case due to the hacked keyboard layout currently being
used. This will be fixed later ...
2021-01-04 16:13:28 +01:00
Victor Perevertkin
e12233daf6
[USETUP] Do not put ImagePath to the service registry entry
It is supposed to be there already
2021-01-04 16:50:33 +03:00
Hermès Bélusca-Maïto
0abff65a55
[USETUP] Minor improvements when initializing the console.
- Use NT values for uninitialized handle values.
- Cache the STD_INPUT_HANDLE.
- Free the console if GetConsoleScreenBufferInfo() fails in CONSOLE_Init().
2021-01-03 00:27:54 +01:00
Hermès Bélusca-Maïto
8b94515bd3
[USETUP] Fix handling of the ESCAPE key.
Its AsciiChar is not zero in Console-compatible code.
2021-01-03 00:27:50 +01:00
George Bișoc
c11d342f42
[OSK] Adjust the resource size, width and heigh properties of buttons (#3403)
For French (fr-FR) and French Canadian (fr-CA) translations.

CORE-17039
2020-12-31 01:48:34 +03:00
Tibor Lajos Füzi
82f0061ddc
[TRANSLATION] Hungarian (hu-HU) translation update (#3388)
For mspaint, notepad, wordpad, cmd, cmdutils/help, appwiz, devmgr, newdev

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2020-12-31 01:42:34 +03:00
Stanislav Motylkov
740beb65e6
[DXDIAG] If ProcessorNameString not found, fall back to Identifier
It also should have its own routine for detecting CPU name, add a comment.
Windows XP and 2003 does have CPU name strings in dxdiagn.dll.

CORE-17413
2020-12-30 19:38:26 +03:00
Jérôme Gardou
6fcd9f3184 [FTP] Always link agains oldnames 2020-12-28 12:13:30 +01:00
Hermès Bélusca-Maïto
e8c9a73bb8
[USETUP] Free allocated memory after loading the new text-mode font from the .CAB file. 2020-12-27 00:51:56 +01:00
Jérôme Gardou
b805a7dd50 [UMANDLG] Define Globals variable in only one translation unit 2020-12-22 13:15:01 +01:00
Eric Kohl
94f01f5b64 [WINLOGON] Add hidden logon/logoff SFC notification 2020-12-21 20:42:40 +01:00
Oleg Dubinskiy
9de8787187
[REGEDIT] Display search finished messagebox when using Find Next (F3) menu item (#3371)
This repeats behaviour of Windows Regedit. CORE-17368
2020-12-21 20:48:52 +03:00
Victor Perevertkin
ff13301eb2
[UMPNPMGR] Set the data type in all cases of PNP_GetDeviceRegProp
CORE-14187
2020-12-06 19:48:38 +03:00
Victor Perevertkin
dd56e065bc
[REACTOS] Enable PnP storage stack
- Use PnP storage class drivers
- Make partmgr an upper filter driver for Disk class
- Fill upper filters in txtsetup and usetup/devinst
- Add cdrom driver to the critical device database

CORE-6264
2020-12-05 22:30:43 +03:00
Hervé Poussineau
b483be4af2 [UMPNPMGR] Remove invalid prototype of inline function
This fixes eede1b9b7a.
2020-12-01 18:51:42 +01:00
Stanislav Motylkov
5cb9f8765b
[SMSS] Revert commit 131bc73
This is now fixed properly by de16ef3.
2020-11-26 13:06:20 +03:00
Stanislav Motylkov
131bc73555
[SMSS] Fix x64 build. Addendum to a0721eb
This part is specific for x86 architecture.
2020-11-26 03:50:16 +03:00
Hermès Bélusca-Maïto
a0721ebdd3
[SMSS] Use the new IsNEC_98 macro defined for user-mode. 2020-11-26 00:29:34 +01:00
Hermès Bélusca-Maïto
a59cecd89d
[SETUPLIB] Add two hacks in partlist.c for temporarily setting consistently the disk partition style.
Add two hacks in UpdateDiskLayout() and WritePartitions() so that the
disk partition style is consistently set to a known value MBR, especially
when that disk was previously new and uninitialized (RAW).
A proper fix will be developed later when support for GPT is added.
2020-11-24 04:37:52 +01:00
Hermès Bélusca-Maïto
05cd77028c
[SETUPLIB][USETUP] Cleanup some code in USETUP. Redefine FormatPartition() and ChkdskPartition() helpers
so that they wrap the needed init steps for formatting/chkdsk'ing.

These helpers now accept a PPARTENTRY, together with the usual
formatting/chkdsk parameters. The helpers now determine the actual
NT path to use, and can perform the init steps on the partition
before performing the actual operation.

In particular, FormatPartition() is now made GPT-compliant. The
partition type retrieved by FileSystemToMBRPartitionType() is now
used as a hint for choosing FAT32 over FAT12/16, and only in the
case of a MBR partition that is *NOT* a recognized OEM partition,
it is used for updating the corresponding partition type. (OEM
partitions must retain their original type.)

The OEM partition types we (and NT) can recognize are specified
e.g. in the Microsoft Open-Specification [MS-DMRP] Appendix B
https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-dmrp/5f5043a3-9e6d-40cc-a05b-1a4a3617df32

Introduce an IsOEMPartition() macro to help checking for these types
(its name is based on the Is***Partition() macros from ntdddisk.h,
and from a dmdskmgr.dll export of similar name).
2020-11-24 03:24:41 +01:00
Hermès Bélusca-Maïto
9735a8379f
[SETUPLIB] Make InferFileSystem() compatible for both MBR and GPT disks. Simplify the FSREC interface a bit.
Instead of providing an MBR partition type to InferFileSystem(), make
it call IOCTL_DISK_GET_PARTITION_INFO(_EX) to determine whether the
partition pointed by the path/handle is MBR or GPT. Then, only if it's
MBR, we retrieve its partition type in order to "guess" an adequate file
system name, in case the latter was not recognized already via regular
ways (via GetFileSystemName() / NtQueryVolumeInformationFile()).

- Remove the GetFileSystemNameByHandle() and InferFileSystemByHandle()
  functions. Instead, make the other GetFileSystemName*() and
  InferFileSystem*() functions accept a HANDLE as an alternative to the
  already-existing partition path string. These parameters are exclusive
  to each other.

- Rename SetPartitionType() -> SetMBRPartitionType(),
  and FileSystemToPartitionType() -> FileSystemToMBRPartitionType()
  in order to really clarify what they do (since this code is meant
  for MBR partitions only, not GPT ones).
2020-11-24 03:24:36 +01:00
Hermès Bélusca-Maïto
8d3e80e437
[FSLIB][FMIFS][AUTOCHK][SETUPLIB] Use more Windows-compatible (but not fully compatible yet) Format() and Chkdsk() ULIB functions.
[AUTOCHK] Add also support for scanning FATX volumes.

The Format(), FormatEx(), Chkdsk(), ChkdskEx() functions exposed by the
U*.DLL user-mode FS library dlls are different (and have different
prototypes) than the similarly-named functions exported by FMIFS.DLL .

In particular, what we used to call "xxxChkdskEx()" and "xxxFormatEx()"
in our U*.DLL libraries actually correspond more, from their arguments,
to the "Chkdsk()" and "Format()" functions in Windows' U*.DLL . Their
*Ex() counterparts instead take most of the parameters through a
structure passed by pointer.

On FMIFS.DLL side, while FMIFS!Chkdsk() calls U*.DLL!Chkdsk() and
FMIFS!ChkdskEx() calls U*.DLL!ChkdskEx() (and we do not implement these
*Ex() functions at the moment), both FMIFS!Format() and FMIFS!FormatEx()
call U*.DLL!Format() instead, while FMIFS!FormatEx2() calls
U*.DLL!FormatEx() (that we do not implement yet either) !!

To improve that, refactor the calls to these U*.DLL functions so as to
respect the more compatible prototypes: They contain the correct number
of parameters in a compatible order. However, some of the parameters do
not have the same types yet: the strings are kept here in PUNICODE_STRINGS,
while on Windows they are passed via an undocumented DSTRING struct, and
the FMIFS callback is instead a MESSAGE struct/class on Windows.
Finally, the MEDIA_TYPE parameter in U*.DLL!Format() is equivalent, yet
not fully 100% in 1-to-1 correspondence, with the FMIFS_MEDIA_FLAG used
in the corresponding FMIFS.DLL functions.

One thing to notice is that the U*.DLL!Format() (and the Ex) functions
support a BOOLEAN (a flag resp.) for telling that a backwards-compatible
FS version should be used instead of the (default) latest FS version.
This is used e.g. by the FAT FS, where by default FAT32 is selected
(depending also on other constraints like, the disk and the partition
sizes), unless that bit is set in which case, FAT16 (or 12) is used.
2020-11-22 21:57:07 +01:00
He Yang
02c566b524
[TRANSLATION][CMD] Update zh-CN translation (partially) (#3330) 2020-11-21 18:05:22 +01:00
Aobi Chan CL
fc3ccb3948
[TRANSLATION] Improve zh-TW translation (#3218)
- Added zh-TW translation for the following modules: credui, crypt32, getuname, mapi32, themeui, shlwapi.
- Modify zh-TW translation for other files.
- Moving Traditional Chinese translation back to Zh.rc for files came from Wine (comdlg32).

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-11-21 18:03:37 +01:00
Stanislav Motylkov
059ba9b0c0
[RAPPS] Properly use FormatMessageW with WinInet message table
Addendum to fb1582d. CORE-17375 CORE-17377
2020-11-20 21:30:29 +03:00
Jérôme Gardou
7a52db76c5 [RAPPS] Do not implicitly cast pointer to BOOL 2020-11-16 16:58:10 +01:00
Oleg Dubinskiy
6aae5f4fdd
[REGEDIT] Make "finished find" messagebox owned by Regedit window (#3369)
Same behaviour as in MS Regedit.
CORE-17367
2020-11-14 19:21:10 +01:00
Jose Carlos Jesus
a012c3d507
[CMD] Add new portuguese (PT) translation (#3260) 2020-11-07 17:27:52 +01:00
Hermès Bélusca-Maïto
ce2c1f6321
[RAPPS.COM] Use HeapAlloc/Free instead of the deprecated LocalAlloc/Free.
And fix my build.
2020-11-06 01:06:12 +01:00
Hermès Bélusca-Maïto
3c722e35b1
[CMD][SERVMAN][SHELL32][WINSPOOL][ROSAPPS][NTOS:PNP] Fix my build. 2020-11-06 01:06:11 +01:00
Hermès Bélusca-Maïto
ec0853ba70
[SERVMAN] Fix trailing whitespace. 2020-11-06 01:06:10 +01:00
Hermès Bélusca-Maïto
f1a4a6e704
[USETUP] Introduce two helpers for formatting displayed disk and partition sizes in order to reduce code duplication. 2020-11-04 23:26:54 +01:00
Hermès Bélusca-Maïto
13dd01b44c
[USETUP] Use pointers to const strings where meaningful. 2020-11-04 23:26:53 +01:00
Mark Jansen
c3b3fcd111
[RAPPS] Abort screenshot iteration on the first not found
This should decrease startup time / db parse time
2020-10-25 20:30:03 +01:00
Mark Jansen
964c22c1ca
[RAPPS][RAPPS.COM] Introduce a rapps console shim
rapps.com will be launched when running 'rapps' from cmd or
from run, and since it is a console application, explorer/ cmd will
wait for it.
This rapps.com passes the commandline to rapps.exe,
and wait for rapps.exe to exit before closing.

CORE-17281
2020-10-25 15:44:33 +01:00
Jérôme Gardou
ab825334dd Apply suggestions from code review
Beautification and clarity

Co-authored-by: Victor Perevertkin <victor@perevertkin.ru>
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-10-20 21:44:54 +02:00
Jérôme Gardou
c004b53d77 Apply suggestions from code review
Style fixes

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
Co-authored-by: Victor Perevertkin <victor@perevertkin.ru>
2020-10-20 21:44:54 +02:00
Jérôme Gardou
00ed72d7e8 [CMAKE] Get rid of add_compile_flags
Use add_compile_options and the like instead
2020-10-20 21:44:54 +02:00
Jérôme Gardou
ed61512236 [CMAKE] Get rid of add_compile_flags_language macro
in favor of add_compile_options and the like with generator expressions
Also take this as an opportunity to remove the C++11 standard hack, GCC 8 now defaults to C++14
2020-10-20 21:44:54 +02:00
Jérôme Gardou
7e116f0ef3 [CMAKE] Get rid of replace_compile_flags
Introduce a finer-grained remove_target_compile_option instead
2020-10-20 21:44:54 +02:00
Jérôme Gardou
907025a018 [CMAKE] Introduce the atl_classes interface library
This takes care of adding the relvant include directory and the _ATL_NO_EXCEPTIONS define, if needed
2020-10-20 21:44:54 +02:00
Jérôme Gardou
d6ea8659c8 [CMAKE] Get rid of the set_cpp macro
Instead of messing with global variables and the like, we introduce two target properties:
 - WITH_CXX_EXCEPTIONS: if you want to use C++ exceptions
 - WITH_CXX_RTTI: if you need RTTI in your module
You can use the newly introduced set_target_cpp_properties function, with WITH_EXCEPTIONS and WITH_RTTI arguments
We also introduce two libraries :
 - cpprt: for C++ runtime routines
 - cppstl: for the C++ standard template library

NB: On GCC, this requires to create imported libraries with the related built-in libraries:libsupc++, limingwex, libstdc++

Finally, we manage the relevant flags with the ad-hoc generator expressions

So, if you don't need exceptions, nor RTTI, nor use any runtime at all: you simply have nothing else to do than add your C++ file to your module
2020-10-20 21:44:54 +02:00
Hermès Bélusca-Maïto
6c94e4f487
[USETUP] Work around GCC's complaints (will be fixed properly later on). 2020-10-20 01:32:30 +02:00
Hermès Bélusca-Maïto
08924c1850
[USETUP][SETUPLIB] Continue hiding the FAT32 format in the format list, but take it into account anyway later on.
The formatter will select it anyway as soon as the partition size
permits it. We make it available internally however so as to "emulate"
FMIFS functionality.

Now rely on the partition filesystem for InstallVBRToPartition() instead
of the unreliable and deprecated partition type.
2020-10-20 01:19:58 +02:00
Hermès Bélusca-Maïto
593bcce999
[SETUPLIB] Code re-organization in bootsup.c and fsutil.c.
- Move the actual VBR bootcode installation helpers into fsutil.c
  (they depend on the selected filesystem).

- Introduce InstallBootCodeToDisk() and InstallBootCodeToFile()
  and bootcode.c helpers, in order to replace the several functions
  that were duplicating the same code.
2020-10-18 20:56:16 +02:00
Hermès Bélusca-Maïto
b51b8ee2d5
[SETUPLIB] Move the filesystem recognition helpers to their own file. 2020-10-18 20:56:16 +02:00
Stanislav Motylkov
8a4273b6ee
[FREELDR] Add variable for default text color
On PC/AT-compatible machines it's Gray, and on NEC PC-98 series it's White.
2020-10-17 19:28:08 +03:00
Stanislav Motylkov
9be9750dc8
[SETUPLIB] Fix some copy-pasta comments, no code changes 2020-10-17 00:48:30 +03:00
Omer I.S
c758d15d0a
[RAPPS] Update Hebrew (he-IL) translation (#3297) 2020-10-15 17:12:50 +03:00
chirsz
a91a709a8d
[CMD] Fix a typo in filename completion (#3293)
Fix filename completion that could cause a incorrect result when the path
contains "dots". (See also HBelusca@d12169b.)
See CORE-8623 and CORE-1901 (bug introduced in r25896 / 54cf74f).

For example:

- The current directory is `C:\Documents and Settings\Administrator\`, and you
  input `".` and press TAB. The completion result would be `".Administrator"`,
  which even does not exist.

- You input "some(file).ext", and you remove the final quote (or the quote
  and "ext") and you attempt to complete the file name.

- Import two additional fixes from HBelusca@a826730: Fix the search ordering
  in the comparisons between szSearch1, szSearch2 and szSearch3.

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-10-11 21:57:08 +02:00