Commit graph

85231 commits

Author SHA1 Message Date
Thamatip Chitpong 8ba6c66890 [MSCONFIG] Update title for en-US and th-TH 2024-03-29 09:35:44 +07:00
Katayama Hirofumi MZ 84f15b15fb
[SHELL32][SHELL32_APITEST] FindExecutable: Add PRF_FIRSTDIRDEF flag (#6681)
Follow-up to #6635. The directory search without this flag didn't work.
JIRA issue: CORE-19493
- Add PRF_FIRSTDIRDEF flag for PathResolveW call.
- Delete needless macro definitions in PathQualifyExW.
- Remove an assertion in IsLFNDriveW.
- Fix shell32_apitest:FindExecutable testcase.
2024-03-29 11:15:38 +09:00
Timo Kreuzer 5442f87080 [NTOS:KE/x64] Improve KiSystemCallHandler code a bit
- Use an index for the table instead of ugly pointer offset
- Invert the check for GUI calls
- Fail with proper status code on invalid win32k syscall ids
2024-03-28 22:26:42 +01:00
Timo Kreuzer 2ed8541dc8 [NTOS:KE/x64] Remove duplicated REX prefix from sysretq 2024-03-28 21:37:25 +01:00
Joachim Henze 558ab78fc5
[SHELL32] *.rc: Strip all unneeded WS_DISABLED in dlg style (#6675)
This is not intended to fix any specific bug. It is just meant for cleanup.
No noticable change in behavior at runtime.
Some rcs had 7 of those, some only 6. So this will also slightly improve sync between the rcs.
2024-03-27 23:37:41 +01:00
Doug Lyons 0c612980ac
[NTOS:MM] Fix ntoskrnl/mm/ARM3/virtual.c causing BSOD 0x1a introduced by commit https://github.com/reactos/reactos/commit/c7e09061ca (#6633) 2024-03-27 23:50:45 +02:00
Adam Słaboń fec827eeef
[FREELDR][NTOS:MM] Add security cookie generation to FreeLoader (#6270)
* [NTOS:MM] Misc improvements for cookie generation code

- Improve support for 64 bit images
- Improve LdrpFetchAddressOfSecurityCookie code

* [FREELDR] Add security cookie generation to FreeLoader

CORE-17808
2024-03-27 23:33:06 +02:00
Timo Kreuzer 36fa628605 [NTOS:KE/x64] Loop in KiInitiateUserApc
This is required since while interrupts are enabled, another user APC could get queued and we want to guarantee that those are all delivered before returning to user mode.
2024-03-27 22:11:07 +01:00
Joachim Henze e3bfcdf9e2
[SHELL32] pl-PL.rc: Fix IDD_FILE_PROPERTIES & IDD_FOLDER_PROPERTIES (#6678)
- This removes an ancient polish-only workaround/extrawurst of 0.4.13-dev-1171-g c81af08 which made the dialog bigger than allowed in y, and which reduced its usability on small monitor resolution.
- Sync the dialogs dimensions back to en-US and all other localizations. Notice also that both dialogs have the same height again afterwards.
- Maximizes the available space for the dynamic parts of the dialog on the right side. Historically even 160 turned out to be too short for that, e.g. EDITTEXT 14009, the dynamic part of "Lokalizacja:". and also EDITTEXT 14007, the dynamic part of "Program:". Therefore we used 170 everywhere for those widths in all other languages. But due to the polish workaround it was crippled to 155 here. Not good!
- Notice also how now the leftmost checkboxes position of the Attributes is perfectly aligned with the other dynamic content of that column above after the fix. This will be important in the future when we will restore the vertical layout of Attribute-checkboxes in both dlgs (Plik vs. checkbox, and Katalog vs. checkbox) to match 2k3sp2
---------
Co-authored-by: Adam Słaboń <asaillen@protonmail.com>
2024-03-27 21:08:17 +01:00
Gleb Surikov a9d9f0de86
[CONFIGURE] Add support for MSVC Toolset 19.4x (#6677)
The MSVC toolset will increment its minor version number from 19.39 (VS 2022 v17.9) to 19.40 (VS 2022 v17.10). The MSVC toolset will be version 19.40.33521.0 in the preview 1 release. For more details, see the MSVC Toolset Minor Version Number 14.40 in VS 2022 v17.10 blog post: https://aka.ms/msvc-ver14.40
2024-03-27 21:04:18 +03:00
Katayama Hirofumi MZ 72a27e6d45
[SHELL32] CQueryAssociation: Add slash check (#6676)
Follow-up to #6656. I had forgotten to check the slash.
JIRA issue: CORE-19493
Add StrChrW(pszAssoc, L'\\') check before PathFindExtensionW call.
2024-03-27 17:36:48 +09:00
Katayama Hirofumi MZ f9a5585870
[SHELL32] Improve FindExecutableW (#6635)
Follow-up to #6656. An approach to
implement ShellExecuteEx correctly.
JIRA issue: CORE-19493
- Rewrite code by using AssocQueryStringW
  and PathResolveW functions.
2024-03-27 17:04:49 +09:00
Joachim Henze 00c4b3d99f
[SHELL32] *.rc: Anonymize the "LIST2" control in IDD_AUTOPLAY1 (#6672)
same as it is already the case in IDD_MIXED_CONTENT1, just 10 lines below it.
The controls name is not referenced from code. Will save a few bytes in the binary and shortens the rc-line.
2024-03-26 23:39:46 +01:00
Joachim Henze ee0329e0e2
[SHELL32] *.rc: accelerator fixes, FIXMEs, drive-properties bg-BG and fr-FR (#6591)
* en-US.rc: create the TODO-list for the required menu-accel-changes

* some accelerator fixes, and add many FIXMEs for stuff that still needs to be improved

* beg the translators to shorten the "On Disk:" string in IDD_FILE_PROPERTIES and IDD_FOLDER_PROPERTIES

* strip superfluous spaces at some strings end and ':' within groupboxes, MS never does that

* bg-BG.rc & fr-FR.rc: Fix text-truncation, It got worse by 0.4.15-dev-5993-g a5bff2457a (#5239) A suggestion of Stasm, personally I dislike moving/resizing controls to dimenstions != en-US

* zh-CN.rc: China is the new land of capitalism, so CAPITALIZE the S. Grab another &W used in en-US/zh-TW

* he-IL.rc: strip a useless comment which just does repeat the string 1:1

* zh-TW: This taiwanese question-mark here is wrong, because the question spans over multiple controls, and the last one already ends with such a question mark.

* pt-PT.rc: Name the attributes-column 'Atributos', as that is the same name that is used in the file-properties-dlg

* sk-SK.rc: strip a comment that does not exist in any other lang

* Fix some lines which had 2 accelerators each, e.g. de-DE.
 IDD_FOLDER_OPTIONS_GENERAL has 100% correct german accelerators now (checked against german XPSP3).

* es-ES.rc: remove a stone-age-workaround, and use the height from en-US again here. The text fits the single line fine now.

* no-NO.rc: Fix a regression of 0.4.9-dev-794-g bf88116252 which added the 70 to the 3 PUSHBUTTONS for all languages, but for no-NO.rc the third button was forgotten

* pt-PT.rc: Fix 2 wrong accelerators. They have been added by a pt-PT.rc translator, but Windows doesn't have them. Windows uses ENTER and ESCAPE just here. And other translators are aware of that. The thing that actually SHOULD have an accelerator in that dialog is the LTEXT "Abrir", but ironically that one was forgotten / intentionally removed by the pt-PT.rc translator upon translation. A pity!

* pt-PT.rc: pt-PT.rc was crippled regarding accelerators, mostly during 0.4.14-dev'ing. Wisdom of the elders was trampled down here.

* pt-PT.rc: fix unintended "::"

* tr-TR.rc: During 0.4.15-dev'ing a lot of accelerators and capitalization were changed in this file, and during that the IDS_* accelerators at the bottom in that file in the
/* context menus */
section were changed, but the reminder-menu-layouts IDM_* and FCIDM_SHVIEW_* were forgotten to be kept in sync.
That is such a common pitfall. Happened to all of us more than one time already.
Sync the capitalization for that file at least. While knowing that there is still a lot of async left for other files.

* tr-TR.rc: Point with 2 FIXMEs to some accelerator-issues that only somebody with a real turkish Windows will be able to fix properly. Actually most likely at least 6 lines in this file are involved into that collision. Try to mention them within the comment at least.
IDM_COPY
IDM_CREATELINK
IDM_DELETE
and
IDS_COPY
IDS_CREATELINK
IDS_DELETE
This bug does only affect master, and no older releases in this form.

* en-US.rc: And finally add a big fat TODO comment for my future self, regarding dlg redesign where attrubutes will need to be laid out vertically in IDD_FILE_PROPERTIES and IDD_FOLDER_PROPERTIES
2024-03-26 17:07:33 +01:00
Maj Soklič f92972efca
[NOTEPAD] Update Slovenian (sl-SI) translation (#6599)
Reviewed-by: Rok Mandeljc <rok.mandeljc@gmail.com>
Reviewed-by: Jaka Kranjc <smgl@lynxlynx.info>
2024-03-25 20:02:15 +03:00
Katayama Hirofumi MZ 6ac153632f
[SHELL32] IQueryAssociations: Fix path and length (#6656)
Implementing correct FindExecutable...
JIRA issue: CORE-19493
- If there were filename extension, then skip to the extension
  by using PathFindExtensionW.
- Use "open" verb if there is no default action if possible.
- Set outlen at CQueryAssociations::ReturnString.
2024-03-25 07:35:15 +09:00
Whindmar Saksit a83e40f6d1
[SHELL32] Fix FS folder assoc array class order (#6047)
Fixes the reg class key order for FS items. The existing code was close,
but for some reason used `//` as the path separator for SystemFileAssociations!

- Fixed SystemFileAssociations.

- Swapped the order of `*` and `AllFilesystemObjects`. This is the documented
  order and can also be observed in Process Monitor.
  https://learn.microsoft.com/en-us/windows/win32/shell/fa-associationarray#about-association-arrays

- Removed `(..., L"%s//%s", extension, wszClass)`, this does not seem to be
  a valid thing (`.TestAAExtWeird` in my tests).

- Adds the `Unknown` class when appropriate. Not adding the `openas` verb
  to `Unknown` rgs registration now to mimic Windows, because ROS
  `CDefaultContextMenu` lacks verb de-duplication and the menu would end up
  with two "Open With" entries. This just uses `(cidl == 1)` to simulate
  Windows, while Windows on NT6 uses `MultiSelectModel=Single`, a NT6 feature
  not implemented in ROS.

- The class order for folders was wrong and is still "wrong" in this PR,
  but I chose to use the Windows menu display order until the exact mechanics
  required in `CDefaultContextMenu` can be understood.

- Extracts the extension from ANSI PIDLs.
2024-03-24 21:37:59 +01:00
Whindmar Saksit f6cf6954eb
[SHLEXTDBG] Added IQueryAssociations, SHGetFileInfo and ShellExecute actions (#6030)
Added multiple new actions, most of them will use the system default implementation but can be forced to use a specific CLSID or IShellFolder implementation.

-  /shgfi (SHGetFileInfo)
-  /assocq (IQueryAssociations)
-  /shellexec (ShellExecuteEx on pidl)
-  /dumpmenu (Dumps the HMENU of a IContextMenu with its menu ids and verbs)

Added /explorerinstance as a new wait mode and made it the default. All the other wait modes are hacks that just works around bugs in ROS.
2024-03-24 21:27:04 +01:00
George Bișoc 7dd8a30cf9
[NTOS:CM] Remove orphaned KCBs of keys during normal hive unload
A hive whose KCBs have a reference count of 0, meaning nobody is using these keys anymore, will not get removed from the cache table.
As a result during a normal hive unloading operation you will get orphaned KCBs which results in an unload failure.

This is wrong, because this is what a normal hive unloading is supposed to do. What it cannot do of course is that it cannot
scramble the references of opened keys by the users who use the Registry, as it is the job of force unloading mechanism to do that.

Also remove a misleading debug print. Force unloading works as intended by scrambling the references of keys and marking the KCB for deletion,
which is what how a force unload works. Namely Windows does exactly that.

CORE-10705
2024-03-24 19:03:47 +01:00
George Bișoc f1d2a44859
[NTOS:CM] Lock the cached KCB before removing it from cache entries
- Annotate the CmpEnumerateOpenSubKeys function with SAL2
- When removing an orphaned cached KCB, ensure that it is locked before clearing it from cache table entries
2024-03-24 19:03:43 +01:00
Whindmar Saksit 2449ed5d85
[ADVAPI32] Handle HKCR in RegDeleteValueA+W and RegDeleteKeyValueW (#6033)
- HKCR delete handling; delete the value in HKCU if it exists there, otherwise delete it in HKLM.
- Changed RegDeleteKeyValueW to just use the regular Reg functions to get HKCR handling for free.
2024-03-24 18:28:26 +01:00
Whindmar Saksit 373816c729
[SHELL32] Support IDropTarget handler in IContextMenu static verbs (#5860)
This adds support for the `DropHandler` subkey in static verbs. `IDropTarget` is called when the verb is invoked. The advantage of this is that no library needs to be loaded until the verb is actually invoked unlike `IContextMenu` shell extensions that have to be loaded during menu creation.

This method is preferred for verb implementations that must work on Windows XP, see
https://learn.microsoft.com/en-us/previous-versions/windows/desktop/legacy/dd940354%28v%3Dvs.85%29?redirectedfrom=MSDN#description
2024-03-24 18:23:07 +01:00
Julen Urizar Compains 54df31ccac
[TRANSLATION] Update Spanish (es-ES) translation (#6449)
- [REACTOS] es-ES: Fixes and typos
- [USETUP] es-ES: Fixes and typos
- [HOTPLUG] es-ES: Fixes and typos
- [OPENGLCFG] Add Spanish (es-ES) translation
- [NETSHELL] es-ES: Fixes and typos
- [SHELL32] es-ES: Fixes and typos
- [SYSSETUP] es-ES: Fixes and typos

Reviewed-by: Ismael Ferreras Morezuelas <swyterzone@gmail.com>
2024-03-24 12:30:56 +03:00
Timo Kreuzer 752c64d152 [USBOHCI] Fix broken indentation 2024-03-23 23:08:01 +01:00
Timo Kreuzer 5869af7821 [USBUHCI] Fix broken indentation 2024-03-23 23:08:01 +01:00
Whindmar Saksit 1408de02ce
[SHELL32] SHOpenFolderAndSelectItems should handle children correctly (#6151)
- Free pidl from ILCombine.
- ILGetNext will never return NULL on valid input, it is not the correct way to check.
2024-03-23 22:24:04 +01:00
Andrei Miloiu f9c93888b7
[CALC] Update Romanian (ro-RO) translation (#6601) 2024-03-23 22:22:50 +01:00
Andrei Miloiu 8d36ad1de6
[SOLITAIRE] Update Romanian (ro-RO) translation (#6600) 2024-03-23 22:21:32 +01:00
Andrei Miloiu 8eb80987e4
[TIMEDATE] Update Romanian (ro-RO) translation (#6613) 2024-03-23 22:20:24 +01:00
Andrei Miloiu 50a15424c8
[SNDVOL32] Update Romanian (ro-RO) translation (#6612) 2024-03-23 22:18:51 +01:00
Andrei Miloiu 269907e44c
[HOTPLUG] Add Romanian (ro-RO) translation (#6644) 2024-03-23 22:17:20 +01:00
Andrei Miloiu 54c816d1f3
[MSCONFIG] Update Romanian (ro-RO) translation (#6533) 2024-03-23 22:16:14 +01:00
Andrei Miloiu d0ce13a0e1
[APPWIZ] Improve Romanian (ro-RO) translation (#6532) 2024-03-23 22:12:30 +01:00
Andrei Miloiu 9b1d21dfa0
[CLIPBRD] Update Romanian (ro-RO) translation (#6535) 2024-03-23 21:18:20 +01:00
Andrei Miloiu 5e31354ff6
[DEVMGR] Update Romanian (ro-RO) translation (#6529) 2024-03-23 21:17:24 +01:00
Andrei Miloiu ef4a2497d7
[NOTEPAD] Update Romanian (ro-RO) translation (#6528) 2024-03-23 21:16:07 +01:00
Andrei Miloiu d1207f6f47
[WININET] Update Romanian (ro-RO) translation (#6527) 2024-03-23 21:14:12 +01:00
Andrei Miloiu f9d2f84d4b
[EVENTVWR] Update Romanian (ro-RO) translation (#6518) 2024-03-23 21:12:52 +01:00
Andrei Miloiu 0c2cc368e2
[MSPAINT] Update Romanian (ro-RO) translation (#6511) 2024-03-23 21:12:23 +01:00
Andrei Miloiu 202114f3ae
[DISKPART][MC] Update Romanian (ro-RO) translation for message table (#6509) 2024-03-23 21:09:42 +01:00
Andrei Miloiu 7d45bb2a21
[OPENGLCFG] Update Romanian (ro-RO) translation (#6507) 2024-03-23 21:07:32 +01:00
Andrei Miloiu c9bab6be25
[NET][MC] Update Romanian (ro-RO) translation for message table (#6506) 2024-03-23 21:07:05 +01:00
Hermès Bélusca-Maïto 3b62a89d4d
[BOOTVID] Don't NTAPI non-exported functions; remove useless @implemented (#6650) 2024-03-23 15:16:00 +01:00
Hermès Bélusca-Maïto ff790a9111
[BOOTVID] Add file copyright information headers (#6650) 2024-03-23 15:15:41 +01:00
Serge Gautherie a8c52fa165
[RSYM/x64] Sync UNW_FLAG_* values (#6653)
Follow-up to PR #6641 and commit d45876b81
2024-03-23 15:13:23 +01:00
Katayama Hirofumi MZ 17b0623cf8
[EXPLORER] Start menu: Fix Small Icons flag (#6651)
Follow-up to #6646.
Fix wrong flag use: #6646 (comment)
JIRA issue: CORE-19494
- Delete SmallStartMenu flag (wrong) from
  _TW_STUCKRECTS2.
- Rename _TW_STUCKRECTS2.SmallIcons as
  SmSmallIcons.
- Use SmSmallIcons flag.
2024-03-22 21:15:22 +09:00
Stanislav Motylkov 2ec785b1ee [SHELL32] Update Russian (ru-RU) translation
Addendum to ad748b0b3b. CORE-19494
2024-03-20 12:26:58 +03:00
Katayama Hirofumi MZ de5c472033
[WIN32SS][USER32] Refactor USER32 callbacks (#6619)
Refactoring kernel-to-USER32 callback code.
Localize USER32 callback entry definitions.
JIRA issue: N/A
- Add header file win32ss/include/u32cb.h and use it to define the
  USER32 callback entries.
2024-03-20 09:45:04 +09:00
Katayama Hirofumi MZ 3be8934107
[SHLWAPI_APITEST] Add AssocQueryString testcase (#6648)
JIRA issue: CORE-19493
- Add AssocQueryString testcase.
- Test AssocQueryStringA and AssocQueryStringW
  functions.
2024-03-20 07:37:37 +09:00
Katayama Hirofumi MZ 436cfa94c9
[SHELL32_APITEST] Add RealShellExecuteEx testcase (#6647)
Follow-up to #5849.
JIRA issue: CORE-19278
- Add closewnd.cpp, closewnd.h, and
  RealShellExecuteEx.cpp files.
- In closewnd.cpp, close newly-opened windows.
- Add RealShellExecuteEx testcase.
2024-03-20 07:36:14 +09:00