Commit Graph
6350 Commits
Author SHA1 Message Date
Mohammad Amin Mollazadeh 3d86d5eed9 [SHCORE] IsOS(OS_XPORGREATER) should return TRUE on NT 6.0+ (#9196)
CORE-20577

Even though the official documentation[^1] says `IsOS(OS_XPORGREATER)` always
returns FALSE, the tests show otherwise and there are application compatibility
issues otherwise.

[^1]: https://learn.microsoft.com/en-us/windows/win32/api/shlwapi/nf-shlwapi-isos
2026-07-03 19:09:49 +02:00
Katayama Hirofumi MZ 79761d88fd [SHELL32][SHLWAPI][SHELL32_APITEST][SDK] Support AssocCreateElement (#9215)
Prepare for CLSID_QueryAssociations.
JIRA issue: CORE-20467
- Add dll/win32/shell32/evalcmd/
  elements.cpp.
- Implement AssocCreateElement
  function in elements.cpp.
- Modify shell32.spec.
- Fix shlwapi!AssocCreate by using
  AssocCreateElement.
- Add SKGetValueW and
  SKSetValueW prototypes into
  <shlwapi_undoc.h>.
- Add AssocCreateElement
  prototype into <shlwapi_undoc.h>.
- Add some CLSIDs into
  <shlguid_undoc.h>.
- Add some resource strings into
  shlwapi.
- Add AssocGetPerceivedType
  prototype into <shlwapi.h>.
- Add AssocCreateElement
  testcase into shell32_apitest.
2026-07-04 01:10:31 +09:00
Mohammad Amin Mollazadeh f66f40ec43 [RICHED20] Fix crash on copy (#9224)
CORE-20482

The reason for the crash was a wrong sign extension being done when right-shifting an integer.
Casting to an unsigned integer allows the correct zero-extension instead.

Import patch from Wine 11.3: wine-mirror/wine@bb4ef1f (https://gitlab.winehq.org/wine/wine/-/merge_requests/9776)
```
riched20: Fix crash when copying text.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=59005
wine commit id bb4ef1fbf7d8dae627025ea698c740cca8d15a06 by Piotr Caban <[email protected]>
```
2026-07-03 14:30:52 +02:00
Timo Kreuzer ed51a5d1e2 [RTL][NTDLL] Implement processor related NT6+ functions
Implements RtlGetCurrentProcessorNumberEx, RtlIsProcessorFeaturePresent
2026-07-01 21:45:34 +00:00
Timo Kreuzer dbb4d36927 [NTOS:KE][NTDLL][NTDLL_VISTA] Implement NtGetCurrentProcessorNumberEx 2026-07-01 21:45:34 +00:00
Whindmar Saksit ff2ad34155 [CABVIEW][ZIPFLDR] Implement ParseDisplayName and GetDetailsEx (#9197) 2026-07-01 12:29:53 +02:00
Whindmar Saksit c891aefdcf [SHELL32] Implement CFolder[Item] getters/setters (#9173) 2026-07-01 11:41:17 +02:00
Timo Kreuzer 6679825f21 [WS2_32] Import inet_addr from wine
The old implementation was buggy and caused stack corruption (triggered by ws2_32_winetest:sock test_inet_pton)
2026-07-01 06:52:45 +00:00
Serge Gautherie cd609f468a [DBGHELP] Fix a warning (#9214)
Fix the warning:
```
dll/win32/dbghelp/type.c:25: warning: "NONAMELESSUNION" redefined
```

CORE-18933
Addendum to commit 212a1a5c74 (PR #7031).
2026-06-29 21:32:20 +02:00
Katayama Hirofumi MZ 0572d36024 [CRT][UCRT][MSVCRT] intrinsic functions: Follow-up of #9157 (#9226)
JIRA issue: CORE-20617
@learn-more found #9157 breaks the build as follows:
> error C2220: the following warning is treated as an error
> warning C4163: 'strncmp': not available as an intrinsic function
> warning C4163: 'strncpy': not available as an intrinsic function
_MSC_VER=1932 was not the version that the intrinsic functions
(strncmp, strncpy, wcsncmp, wcsncpy) added.
Using Compiler Explorer could detect the correct version:
_MSC_VER=1950.
2026-06-29 13:48:51 +09:00
Whindmar Saksit 3dfa23f661 [KEYBOARD] Fix AltGr for VkKeyScan on some keyboards (#9176) 2026-06-29 00:04:38 +02:00
Karol Gocłowski ff7ed205fb [SHLWAPI] Add Polish translation for SHRestrictedMessageBox (#9192) 2026-06-28 20:33:48 +02:00
Alex Mendoza 02f2314139 [SHELL32] Implement LockServer (#9055) 2026-06-27 16:36:29 +02:00
Justin Miller 5cef1f68e3 [SDK] kernelbase SDK changes 2026-06-24 15:27:43 -07:00
Timo Kreuzer a723ff5600 [WIN32_REGISTRY] Add win32_registry static library
To be used by NT6 apis in kernel32

This is not great. It works, but it puts stuff into the lib that shouldn't be in there. We need it, because the includes need the generated files.
Maybe a dependency could solve that.
2026-06-24 15:27:43 -07:00
Eric Kohl 4369126acc [NETCFGX] Read IpAddress, SubnetMask, DefaultGateway and DefaultGatewayMetric from the registry 2026-06-24 19:11:04 +02:00
Katayama Hirofumi MZ 546297fe86 [SHELL32][SHLWAPI][BROWSEUI][SHELL32_APITEST][SDK][KBSWITCH][RAPPS] Support SHEvaluateSystemCommandTemplate (#9111)
This function has an important role
for new ShellExecute implementation.
JIRA issue: CORE-19278
- Add evalcmd static library into
  dll/win32/shell32/evalcmd.
- Implement
  SHEvaluateSystemCommandTemplate
  in evalcmd.
- Link evalcmd to shell32 and shlwapi.
- Modify shell32.spec and shlwapi.spec.
- Add prototype to <shellapi.h>.
- Add
  SHEvaluateSystemCommandTemplate
  testcase.
- Define PathIsAbsolute inline
  function in <shlwapi_undoc.h>
  and use it.
2026-06-24 20:35:37 +09:00
Eric Kohl afbc922405 [NETCFGX] Fix the output of ITcpipProperties_fnUnknown1
- An empty parameter must be returned as an empty string instead of '(null)'.
- Add missing parameters DynamicUpdate and NameRegistration.
2026-06-24 11:56:42 +02:00
Timo Kreuzer da8f604da0 [SHELL32] Forward SHSetInstanceExplorer to shcore.SetProcessReference
Addendum to commit aaf231f
2026-06-23 18:10:39 +00:00
Timo Kreuzer 0e245f97b5 [SHELL32] shell32.spec: Add Vista exports 2026-06-23 18:10:39 +00:00
Timo Kreuzer c3d6516f20 [SHELL32] Make Shell_GetCachedImageIndexW EXTERN_C 2026-06-23 18:10:39 +00:00
Timo Kreuzer a790beb22b [SHELL32] Fix SHBindToObject
This should have 5 parameters and stdcall convention.
Get rid of SHBindToObjectEx.
2026-06-23 18:10:39 +00:00
Timo Kreuzer 4f329a03b7 [SHELL32] shell32.epsc: Move automatic ordinals to the bottom 2026-06-23 18:10:39 +00:00
Timo Kreuzer bd6d9b73ee [SHELL32] shell32.spec: Mark auto-ordinal exports with @
This also adds comments about the ordinal on Windows 2003 and Vista
2026-06-23 18:10:39 +00:00
Timo Kreuzer 03bd53db66 [CRYPT32] Sync to wine 10.0
- Move CertEnumSystemStoreLocation to reactos/store.c
- Add emulation layer for unixlib calls
- Implement enumeration of root certificate store in the registry

TODO:
- Implement remaining unixlib functionality using mbedtls or similar
2026-06-23 17:36:26 +00:00
Eric Kohl 72c5ab502b [NETCFGX] Implement ITcpipProperties_fnUnknown2 partially
- Update internal IpAddress, Gateway and NameServer information
- Mark modified component
2026-06-23 17:27:22 +02:00
Eric Kohl 8b54dc6c0c [IFMON] Test for DHCP configuration in the 'add address' and 'delete address' commands 2026-06-21 17:24:22 +02:00
Timo Kreuzer 0232efdd19 [NTDLL] Implement LdrGetProcedureAddressEx for NT6 2026-06-21 15:07:00 +00:00
Timo Kreuzer d0b292cda6 [VCSTARTUP] Separate the library from vcruntime
Previously this was mixed with vcruntime, with some objects being shared. But this is messy. Instead use a separate library and link ucrtbase to this as well. This also matches more closely how native libraries are organized, where vcstartup is merged into the CRT import libraries, while vcruntime is merged into the static CRT libraries.
2026-06-21 12:30:32 +00:00
Timo Kreuzer f473ddad73 [SHLWAPI] Revert "Remove unneeded changes"
This reverts commit afcac332cf.
2026-06-21 12:29:51 +00:00
Eric Kohl 4d2238e07a [NETCFGX][REACTOS] Add NetCfgDiagRepairRegistryBindings stub 2026-06-21 10:10:29 +02:00
Mark Jansen 7c05a10a90 [ACLAYERS] Add shim for GlobalMemoryStatus
This is needed by games like Half-life that won't start without it.
2026-06-21 01:33:39 +02:00
Mark Jansen ab16c8a867 [ACLAYERS][APPSHIM_APITEST] Relicense to a friendlier license 2026-06-21 01:33:39 +02:00
Eric Kohl a6133d2b44 [IFMON] Add the 'delete address', 'delete dns' and 'reset' commands to the 'interface ip' context
The 'reset' command is just a stub.
2026-06-21 00:35:46 +02:00
Katayama Hirofumi MZ 332331ce1b [SHLWAPI] Update Japanese (ja-JP) translation
CORE-19278
2026-06-20 19:36:24 +09:00
Stanislav Motylkov af405b51ce [SHLWAPI] Update Russian (ru-RU) translation
Addendum to 0533a67b18. CORE-19278
2026-06-20 13:12:28 +03:00
Katayama Hirofumi MZ 0533a67b18 [SHLWAPI][SHELL32][SDK] Support SHRestrictedMessageBox (#9160)
Implementing missing features...
JIRA issue: CORE-19278
- Add IDS_RESTRICTED and IDS_RESTRICTIONS
  resource strings.
- Implement SHRestrictedMessageBox function.
- Modify shlwapi.spec.
- Add prototype into <shlwapi_undoc.h>.
- Restrict Folder Options on
  REST_NOFOLDEROPTIONS by using
  SHRestrictedMessageBox.
2026-06-20 09:25:47 +09:00
Amine Khaldi c51c284474 [VBSCRIPT] Sync with Wine 10.0. CORE-20606 2026-06-19 19:33:57 +01:00
Eric Kohl d087f8d58b [IFMON] Rename some resource IDs 2026-06-19 19:24:56 +02:00
Eric Kohl a3d4ae2794 [IFMON] Implement the 'delete arpcache' command in the 'interface ip' context 2026-06-19 18:45:22 +02:00
Mohammad Amin Mollazadeh b4b8774bee [SETUPAPI] Fix SetupGetBinaryField not reading HEX values properly from INF files (#9182)
CORE-20657, CORE-13525

Fix an issue in `SetupGetBinaryField()` that made the GUI installer unable to read INF files properly.
For this reason, all the binary values in the registry on a fresh ReactOS installation were all set to `0x00`.

The reason was that the custom HEX parser in Wine's `SetupGetBinaryField()` is broken.
As a solution, we can replace it with a call to C's standard `wcstoul()` function.

(Note that Wine fixed this problem in wine-11, still with a hand-made hex-value parser...)
2026-06-19 17:16:19 +02:00
Eric Kohl ab2393c0de [IFMON] Implement the 'add dns' command in the 'interface ip' context
The index argument is not supported yet.
2026-06-19 10:37:50 +02:00
Timo Kreuzer aaf231f00f [SHELL32] Forward SHGetInstanceExplorer to shcore.GetProcessReference
Fixes 3 shcore wine tests.
2026-06-18 23:27:41 +00:00
Timo Kreuzer 5a4ed508fd [SHLWAPI] Move all remaining kernelbase functions to kernelbase.c
This way the other files are almost completely identical to Wine-10 and once we export those functions from kernelbase, we can delete them from there.
2026-06-18 23:27:41 +00:00
Timo Kreuzer 6adc874cbb [SHLWAPI] Use kernelbase
This replaces implementations that no longer exist in Wine-10.0's shlwapi
Also forward some exports to kernelbase_ros. This is to prevent them from being reimported from shell32, which forwards them here.
It is not exactly what Windows does (which exports the import stubs), but it should be good enough for now.
2026-06-18 23:27:41 +00:00
Timo Kreuzer 6a8c5c999c [KERNELBASE] Fix some string functions to pass tests 2026-06-18 23:27:41 +00:00
Timo Kreuzer 325b7adcd9 [SHLWAPI] Move some functions to shlwapi_main.c
This moves WhichPlatform, SHIsLowMemoryMachine and SHGetViewStatePropertyBag to shlwapi_main.c, where they are in Wine-10.0
2026-06-18 23:27:41 +00:00
Timo Kreuzer 8bd4911054 [SHLWAPI] Update WhichPlatform from Wine-10.0 2026-06-18 23:27:41 +00:00
Timo Kreuzer 88337f5e7a [SHLWAPI] Reformat WhichPlatform (no code changes) 2026-06-18 23:27:41 +00:00
Timo Kreuzer afcac332cf [SHLWAPI] Remove unneeded changes
This reverts part of d663eb4466
2026-06-18 23:27:41 +00:00