| Home | Table of Contents | Please view with Internet Explorer (version 5.00 or higher) and enable scripting. For reasons, see Browsing This Web Site. |
CURRENT WORK ITEM - PREVIEW ONLY
When the IsOS function is given OS_WELCOMELOGONUI as its dwOS argument, its answer is obtained by different methods in different SHLWAPI builds. All builds agree on a test for whether the Welcome Logon User Interface is enabled, but they differ in their selection of preliminary tests for whether the feature is supported.
The SHLWAPI version 6.00 from Windows Vista limits the feature to operating systems from before Windows Vista and only then for workstations. For late version 6.00 pre-Vista builds, the feature is supported only on workstations that are not domain members. Before then, it was apparently thought sufficient just to check that the local computer is not a domain member. (The test for Windows Vista or higher is that of the undocumented IsOS case 0x25. The test for a workstation is that the wProductType member of the version information obtained from GetVersionEx is VER_NT_WORKSTATION. The test for domain membership is essentially that of OS_DOMAINMEMBER.)
As for whether the supported feature is enabled, all builds check the registry. The function returns TRUE if the GinalDLL value is not present and the LogonType value is non-zero.
The GinaDLL value is from one key only:
| Keys | HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon |
| Value | GinaDLL |
If the value is present but has more than 260 bytes of data, it is interpreted as being not present. The LogonType value is from either of two keys in the registry, listed below in order of decreasing precedence:
| Keys | HKEY_LOCAL_MACHINE\Software\\Microsoft\Windows\CurrentVersion\policies\system
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon |
| Value | LogonType |
| Type | REG_DWORD |
If the value is present but the data type is not REG_DWORD, it is evaluated as zero.
The OS_WELCOMELOGONUI case of the SHLWAPI function IsOS is supported in version 6.00 and higher.