HOWTO: Password Protecting Screen Savers without ScrnSave.libLast reviewed: March 12, 1998Article ID: Q182382 |
The information in this article applies to:
SUMMARYThe ScrnSave.lib static library provides the "standard" Windows 95 Screen Saver password, not Windows itself. The "standard" Windows 95 Screen Saver password is not available to Screen Savers that are not written to use ScrnSave.lib. Screen Savers that are not written to use ScrnSave.lib need to implement independent password authentication, encryption, and storage. Windows NT ignores the password handling within the Screen Saver and uses the user's system password.
MORE INFORMATIONThe ScrnSave.lib library provides password protection for Screen Savers that use it. Windows 95 Screen Savers that are not written with ScrnSave.lib need to provide independent password handling. To do this, Screen Savers need to provide a Password Change dialog box. The Password Change dialog box is displayed when the Screen Saver is started with a "/a <HWND>" argument, where <HWND> is an unsigned decimal number representing the HWND of the owner window of the password dialog box. If no HWND is passed in the Password Change dialog box, the foreground window should own the Password Change dialog box. When the Screen Saver runs it should check the HKEY_CURRENT_USER/ REGSTR_PATH_SCREENSAVE/REGSTR_VALUE_USESCRPASSWORD (REGSTR_PATH_SCREENSAVE and REGSTR_VALUE_USESCRPASSWORD can be found in regstr.h) registry key if it needs to use the Screen Saver's password protection. If the Screen Saver does need to use its password protection, it needs to prevent the user from switching to other applications without giving the password. To do this the Screen Saver needs to call:
int prev; SystemParametersInfo(SPI_SCREENSAVERRUNNING,TRUE,&prev,0);This prevents the user from using ALT+TAB to switch to another application or CTRL+ALT+DELETE to kill the Screen Saver. When the user hits a key or moves the mouse, the Screen Saver confirms the password. If the password is validated, the Screen Saver calls the following to re-enable task switching:
int prev; SystemParametersInfo(SPI_SCREENSAVERRUNNING,FALSE,&prev,0); Version : WIN95;WINNT:3.50,3.51,4.0 Platform : Win95 winnt Issue type : kbhowto |
================================================================================
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |