Commit graph

76 commits

Author SHA1 Message Date
Hermès Bélusca-Maïto cccf26da74
[SERVICES] Re-implement RChangeServiceConfigA() around RChangeServiceConfigW(), much as what is done for RCreateServiceA(). 2018-09-09 23:24:04 +02:00
Hermès Bélusca-Maïto d6e577ced9
[SERVICES] RChangeServiceConfigW: Check valid usage of lpdwTagId when lpLoadOrderGroup is not specified. 2018-09-09 23:23:55 +02:00
Serge Gautherie e3a1c2c81b [SERVICES] RChangeServiceConfig2A(): Zero-Initialize InfoW variable
This lets forward NULL Info.psd/Info.psd->lpDescription/Info.psfa,
instead of an uninitialized value.

CORE-14521
2018-08-21 17:36:46 +02:00
Adam Słaboń af3d426685 [TRANSLATION] Polish translation update (#781)
In addition: fix the encoding of the comdlg32 and ntvdm polish resource files.
2018-08-20 17:00:33 +02:00
Hermès Bélusca-Maïto fd39f92fcb
[INCLUDE][WINLOGON] Rename the STARTF_SCRNSAVER flag to STARTF_SCREENSAVER,
as documented in "Advanced Windows NT" by Jeffrey M. Richter (Microsoft Press),
and in https://is.muni.cz/el/1433/jaro2010/PB167/um/cv5/undocumented_CreateProcess.pdf .

[INCLUDE][SERVICES][WIN32K:NTUSER] Add an undocumented STARTF_INHERITDESKTOP flag
for the STARTUPINFO::dwFlags structure member, whose purpose is to tell Win32k
that the created handles to the window station and desktop to which the
process is connecting to, can be inherited by its child processes.
It is used when starting interactive services.
Observed via API monitoring on Windows 2003.
2018-08-19 22:18:40 +02:00
Timo Kreuzer 094a90ad4e [NTOS:PS] Fix an issue with PROCESS_DEVICEMAP_INFORMATION size on 64 bit builds
The PROCESS_DEVICEMAP_INFORMATION  union has 2 fields, one is a handle, the other one is a structure of 36 bytes (independent of architecture). The handle forces 64 bit alignment on 64 bit builds, making the structure 4 bytes bigger than on 32 bit builds. The site is checked in NtQueryInformationProcess (case ProcessDeviceMap). The expected size on x64 is the size of the Query structure without alignment. autocheck correctly passes the site of the Query union member, while smss passes the full size of PROCESS_DEVICEMAP_INFORMATION. Packing the structure is not an option, since it is defined in public headers without packing. Using the original headers sizeof(PROCESS_DEVICEMAP_INFORMATION) is 0x28, sizeof(PROCESS_DEVICEMAP_INFORMATION::Query) is 0x24.
2018-08-17 22:08:37 +02:00
Eric Kohl 2bbac12427 [DLLHOST] Add dllhost to make the device driver extractor for my Lenovo T400 happy 2018-08-11 22:25:30 +02:00
Serge Gautherie 7d6bda16c6
[REACTOS] Improve how some ASSERTMSG() message values are printed: enforce ending "\n".
NB: Not touching calls in "third-party" code: class and classpnp.
2018-08-08 22:03:45 +02:00
Hermès Bélusca-Maïto 10c5bfb8fe
[WINLOGON] Hack-fix for CORE-14877 ; see commit bcec1fd6. 2018-08-06 17:38:00 +02:00
Hermès Bélusca-Maïto 40000a1716
[WINLOGON][MSGINA] Fix typo. 2018-08-06 17:37:38 +02:00
Timo Kreuzer cf77354dce [REACTOS] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Hermès Bélusca-Maïto 3b6faba11a
[AUTOCHK] Improvements: code + command-line handling.
- Add support for the following command-line arguments: /k, /p (and a little bit
  of /r), and add support for checking a particular volume.
  A description of these arguments can be found at:
  "Description of Enhanced Chkdsk, Autochk, and Chkntfs Tools in Windows 2000",
  https://web.archive.org/web/20150215210228/http://support.microsoft.com:80/kb/218461

- Slightly improve some messages.

- Get rid of legacy OpenDirectory() and simplify GetFileSystem().
2018-07-29 16:21:09 +02:00
Hermès Bélusca-Maïto 472d1d2f64
[AUTOCHK] Improve the timeout countdown prompt by displaying the actual remaining seconds before the disk check.
Make also keyboard availability optional.
2018-07-29 16:21:08 +02:00
Hermès Bélusca-Maïto 4225172506
[AUTOCHK] Minor code formatting; reduce indentation level of some blocks; use RTL_NUMBER_OF() macro; normalize file header. 2018-07-29 16:21:07 +02:00
David Knapp 7bbb6bd4b5 [AUTOCHK] Improve readability of messages 2018-07-26 07:28:42 +02:00
Eric Kohl 66981e1b07 [SERVICES] Keep a global service bits variable that combines the service bits of all running services 2018-07-23 01:48:49 +02:00
Hermès Bélusca-Maïto 02eee253b2
[WINLOGON] Allow WinSta0 access only when needed. Also, reset the WinSta0 user as soon as we have logged-off. 2018-07-22 19:03:17 +02:00
Eric Kohl 91a5ee334d [SERVICES] Add a checks for vaild info level to RChangeServiceConfig2A/W and RQueryServiceConfig2A/W
CORE-14837
2018-07-22 12:45:23 +02:00
Hermès Bélusca-Maïto bcec1fd6c3
[WINLOGON] When starting Setup (which runs with SYSTEM credentials), explicitly specify on which window station and desktop we start it, so as to avoid the default choice of the non-interactive Service-0x0-3e7$ window station.
Also, switch to the WinSta0\Default desktop just only before starting Setup, and restore Winlogon setup when it finishes.
2018-07-17 01:59:51 +02:00
Hermès Bélusca-Maïto fafcd50a35
[SERVICES] Minor additions.
- Remove a redundant ScmWaitForLsa() call.
- Remove the LSA_RPC_SERVER_ACTIVE macro (just use directly the string).
- Improve output of DPRINTs.
2018-06-28 23:34:08 +02:00
Hermès Bélusca-Maïto 75dc031080
[SERVICES] Remove the "Special service accounts initialization" hack, and enable per-service account logging.
This effectively removes the temporary hacks introduced in r73486 (a35a785b)
and in r73487 (0ce031f7) for the LocalService and NetworkService accounts.

Now these accounts (and their corresponding user profiles) are created
on the fly, the first time a service that needs these is started.
The code introduced in r73501 (ade0d2cd) is now re-enabled: this has
been made possible thanks to commit f42b4bbe (thanks Eric!).

Dedicated to Joachim Henze ;-)

CORE-12541, CORE-12279
2018-06-28 23:34:02 +02:00
David Knapp 893a3c9d03 [AUTOCHK] Improve autochk messages 2018-06-26 09:16:34 +02:00
Katayama Hirofumi MZ 0a8cd95cad [USERINIT][EXPLORER] Fix auto startup of Start Menu (#594)
- Remove code for Start-Menu auto-startup items from userinit and put it where it belongs: in explorer.

CORE-10839
2018-06-22 16:02:25 +02:00
Pierre Schweitzer 2149c3d0d0
[AUTOCHK] Let the timeout for disk repair to be configured 2018-06-09 00:19:09 +02:00
Pierre Schweitzer 79975ede26
[AUTOCHK] Allow users to skip disk checking if dirty
CORE-14692
2018-06-05 19:34:47 +02:00
Hermès Bélusca-Maïto 528e6339c2
[WINLOGON] Update Italian translation (#513) (by deleted user) 2018-05-31 15:41:09 +02:00
Eric Kohl 46dcab7ab1 [WINLOGON] Ignore the CTRL+SHIFT+ESC hotkey when the session is not in the logged-on state
Should fix CORE-13478
2018-05-22 18:14:42 +02:00
Eric Kohl 1f0fe38634 [WINLOGON] Prevent shell restart when the user is logged off 2018-05-22 14:36:55 +02:00
Pierre Schweitzer 3dc07c91f8
[WINLOGON] Fix build. 2018-05-21 11:33:02 +02:00
Eric Kohl 02f3cb5381 [WINLOGON] Close all dialog boxes on SAS
CORE-13593
2018-05-21 11:21:42 +02:00
Pierre Schweitzer 7662858670
[AUTOCHK] Statically link to FS libs.
This will help reducing the number of handles open.

CORE-13759
2018-05-10 10:49:17 +02:00
Wexpo Lyu 62a90470f8 [WINLOGON] Update simplified chinese translation (#528) 2018-05-02 14:12:59 +02:00
Hermès Bélusca-Maïto 44b5f652a5
[WINLOGON] Delimit the custom system shutdown message within a read-only edit control. 2018-05-02 00:24:11 +02:00
Eric Kohl fd090c6ca1 [SERVICES] Implement RI_ScSetServiceBitsA/W
- RI_ScSetServiceBitsA: Just call RI_ScSetServiceBitsW.
- RI_ScSetServiceBitsW: Store the service bits in the service list entry.
TODO: Merge all service bits in a global variable and pass it to the server service. Maybe use netapi.I_NetServerSetServiceBits(Ex)?
2018-05-01 21:33:37 +02:00
Hermès Bélusca-Maïto 37deb7593e
[WINLOGON] Update french translation of the system shutdown dialog. 2018-04-29 18:02:41 +02:00
Eric Kohl 153c645b2c [WINLOGON] Add german translation of the system shutdown dialog 2018-04-29 17:44:41 +02:00
Eric Kohl ec2bfa2e11 [WINLOGON] Localize the shutdown timeout 2018-04-29 17:09:37 +02:00
Hermès Bélusca-Maïto cb20bf8c90
[WINLOGON] Usability enhancement for the RPC SystemShutdown functionality.
- Perform an immediate system shutdown if the timeout is zero, otherwise
  display the countdown shutdown dialog.
- Cleanup pShutdownParams->pszMessage as soon as the dialog goes away.
- It actually appears (tested on Windows 2000 and 2003) that sending
  WM_CLOSE messages from a user-mode app to the shutdown dialog really
  do nothing (and in particular does not cancel the shutdown!), so modify
  the code to take this fact into account.
2018-04-29 01:02:05 +02:00
Bișoc George b3ff4f5f95 [WINLOGON] Romanian translation update 2018-04-14 21:11:48 +02:00
Adam Słaboń abe6bbabfb [TRANSLATION] Polish translation update for drwtsn32, winlogon and usersrv. (#475) 2018-04-10 22:54:34 +02:00
Eric Kohl 3318d8d5be [WINLOGON] Fix shutdown timeout format string for long timeout
- Use the "%d days" format for timeouts longer than a day.
- Fail if timeout is 10 years or longer.
- TODO: Replace format strings by resources. German WinXP uses "%d days" instead of "%d Tage". We can do better! ;-)
2018-04-02 19:09:13 +02:00
Hermès Bélusca-Maïto 2da4999011
[WINLOGON] Fix some dialog control dimensions. 2018-04-02 15:05:25 +02:00
Eric Kohl 9a6d4bf0c5 [WINLOGON] System shutdown dialog clean-up
- Replace the winlogon icon by the warning icon.
- Add more space for the main text.
- Move the shutdown time into a separate line to ensure it is always fully visible.
- Add more space for the shutdown message and keep the message empty by default.
- Clean up the resource IDs.
2018-04-02 13:33:41 +02:00
Eric Kohl 2ae4585250 [WINLOGON] Clean up part 2
- Replace the UNICODE_STRING usMessage by a PWSTR pszMessage.
- Use the "%02d:%02d:%02d" time format and get rid of the safe string printf because the string will NEVER be longer than 8 characters.
- Rename the timer id constant because it is NOT a resource id.
- Rename variables according to the coding style.
2018-04-02 12:47:15 +02:00
Eric Kohl 72dc173158 [WINLOGON] Clean up part 1
- Add empty lines to separate logical blocks of code.
- Add spaces according to our coding style.
- Move g_hShutdownDialog and g_bShuttingDown into the shutdown parameters struct.
- Pass a pointer to the shutdown parameters to the shutdown thread and the shutdown dialog and use the pointer instead of the global variables.
- Move the timer code into a separate function because it requires local variables.
2018-04-02 01:37:50 +02:00
Eric Kohl 1fac4b068f [WINLOGON] Missed this file 2018-04-02 00:42:15 +02:00
Eric Kohl f50d7749d0 [WINLOGON] Move the system shutdown code into a separate file 2018-04-02 00:38:52 +02:00
alpha5056 7ca90b50de [WINLOGON] Implement BaseInitiateSystemShutdownEx(). (#458) 2018-04-01 19:39:41 +02:00
Amine Khaldi 6e4ff4348a [MSIEXEC] Sync with Wine Staging 3.3. CORE-14434 2018-04-01 13:13:47 +01:00
Amine Khaldi f4ab01b670 [EXPAND] Sync with Wine Staging 3.3. CORE-14434 2018-04-01 13:12:40 +01:00