[The WlxStartApplication function is no longer available for use as of Windows Server 2008 and Windows Vista.]
There are two reasons that the system might need an application to start in the context of the user:
- Windows Explorer has quit unexpectedly and needs to be restarted.
- The extended task manager needs to run.
Note GINA DLLs are ignored in Windows Vista.
The GINA can override this behavior, if appropriate, by using the WlxStartApplication function.
BOOL WlxStartApplication( _In_ PVOID pWlxContext, _In_ PWSTR pszDesktopName, _In_ PVOID pEnvironment, _In_ PWSTR pszCmdLine );
- pWlxContext [in]
A pointer to the GINA context associated with this window station. The GINA returns this context value when Winlogon calls WlxInitialize for this station.
- pszDesktopName [in]
- pEnvironment [in]
Specifies the initial environment for the process. Winlogon creates this environment and hands it off to the GINA. The GINA can modify this environment before using it to initialize the shell of the user. When the GINA has finished using this environment, it must free the memory allocated for pEnvironment by calling the VirtualFree function.
- pszCmdLine [in]
The program to execute.
If the function successfully starts the application, the function returns TRUE.
If the function fails or the application did not start, the function returns FALSE.
Before calling WlxStartApplication, Winlogon sets the desktop state so that the current desktop is the Winlogon desktop and sets the workstation state so that the desktop is locked.
If the WlxStartApplication function is not exported by the GINA, Winlogon will execute the process.
Minimum supported client
|Windows XP [desktop apps only]|
Minimum supported server
|Windows Server 2003 [desktop apps only]|
End of client support
End of server support
|Windows Server 2003|
Build date: 12/16/2013