How to start autorun programs early?

2

1

We have software that we want to run very early in the login process. The software modifies or hides some elements of the user's desktop, and the user should never see the unmodified desktop.

Now, on Windows 7, just starting the software via auto start works well; the software is already active when the desktop is shown.

For Windows 10 though, the software is started a few seconds after the desktop is initially shown, so it is too late for our purposes.

Is there a way to start the software earlier or delay the desktop?

P.S.: We are doing kiosk-like embedded machines, so we really want to do that.

Jens

Posted 2016-05-18T07:33:44.140

Reputation: 629

Answers

4

From this stackoverflow question, your best bet is to run the programme as a service. One option is to use the NSSM. The relevant bits from the answer:

Source: Understanding the Startup Process - Windows 7 Tutorial

The normal startup sequence for Windows 7 is:

  1. Power-on self test (POST) phase
  2. Initial startup phase
  3. Windows Boot Manager phase
  4. Windows Boot Loader phase
  5. Kernel loading phase
  6. Logon phase

a high-level overview of the different paths startup can take

Kernel Loading Phase The Windows Boot Loader is responsible for loading the Windows kernel (Ntoskrnl.exe) and the HAL into memory. Together, the kernel and the HAL initialize a group of software features that are called the Windows executive. The Windows executive processes the configuration information stored in the registry in HKLM\SYSTEM\CurrentControlSet and starts services and drivers. The following sections provide more detail about the kernel loading phase.

Logon Phase

The Windows subsystem starts Winlogon.exe, a system service that enables you to log on and log off. Winlogon.exe then does the following:

  • Starts the Services subsystem (Services.exe), also known as the SCM. The SCM initializes services that the registry entry Start designates as Autoload in the registry subkey HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Servicename.
  • Starts the Local Security Authority (LSA) process (Lsass.exe).
  • Parses the Ctrl+Alt+Delete key combination at the Begin Logon prompt (if the computer is part of an AD DS domain).

The logon user interface (LogonUI) feature and the credential provider (which can be the standard credential provider or a third-party credential provider) collect the user name and password (or other credentials) and pass this information securely to the LSA for authentication. If the user supplied valid credentials, access is granted by using either the default Kerberos V 5 authentication protocol or Windows NT LAN Manager (NTLM).

Winlogon initializes security and authentication features while PnP initializes auto-load services and drivers. After the user logs on, the control set referenced by the registry entry LastKnownGood (located in HKLM\SYSTEM\Select) is updated with the contents in the CurrentControlSet subkey. By default, Winlogon then starts Userinit.exe and the Windows Explorer shell. Userinit may then start other processes, including:

  • Group Policy settings take effect Group Policy settings that apply to the user and computer take effect.
  • Startup programs run When not overridden by Group Policy settings, Windows starts logon scripts, startup programs, and services referenced in the following registry subkeys and file system folders:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Runonce
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
    HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows\Run
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
    SystemDrive\Documents and Settings\All Users\Start Menu\Programs\Startup
    SystemDrive\Documents and Settings\username\Start Menu\Programs\Startup
    

Several applications might be configured to start by default after you install Windows, including Windows Defender. Computer manufacturers or IT departments might configure other startup applications.

Windows startup is not complete until a user successfully logs on to the computer. If startup fails during the logon phase, you have a problem with a service or application configured to start automatically.

RJ-

Posted 2016-05-18T07:33:44.140

Reputation: 713

Please quote the essential parts of the answer from the reference link(s), as the answer can become invalid if the linked page(s) change. – DavidPostill – 2016-05-18T09:50:47.553