CTX113039 - A Screen Saver Appears in a Seamless Session When Idle This document was published at: http://support.citrix.com/article/CTX113039 Document ID: *CTX113039*, Created on: Apr 30, 2007, Updated: Apr 30, 2007 Products: Citrix MetaFrame XP 1.0 for Microsoft Windows 2000, Citrix MetaFrame XP 1.0 for Microsoft Windows 2003, Citrix MetaFrame Presentation Server 3.0 for Microsoft Windows 2000, Citrix MetaFrame Presentation Server 3.0 for Microsoft Windows 2003, Citrix Presentation Server 4.0 for Microsoft Windows 2000, Citrix Presentation Server 4.0 for Microsoft Windows 2003, Citrix Presentation Server 4.5 for Windows Server 2003, Citrix Presentation Server 4.5 for Windows Server 2003 x64 Edition *Symptoms* When working in a seamless application, a screen saver appears after leaving the session idle. *Troubleshooting* By design, Citrix disables screen savers for published applications. Active screen savers can contribute towards a performance hit to bandwidth and server resources in general. *Important*: Citrix does not *prevent *screen savers from appearing in a seamless session; it disables screen savers upon starting. This is accomplished through wfshell when the session is started by calling SystemParametersInfo( SPI_SETSCREENSAVEACTIVE, FALSE, 0, SPIF_SENDWININICHANGE ); Custom code can be written to view or modify the screen saver status by using the following Microsoft Windows application programming interface (API) call: SystemParametersInfo() With the following screen saver parameters: SPI_GETSCREENSAVEACTIVE SPI_GETSCREENSAVERRUNNING SPI_GETSCREENSAVETIMEOUT SPI_SETSCREENSAVEACTIVE SPI_SETSCREENSAVETIMEOUT See Microsoft Knowledge Base article 315725<http://support.microsoft.com/kb/315725> . Custom scripts can be written for enabling/disabling screen savers using the above API calls. *Cause* There is a Group Policy object (GPO) in the environment with a screen saver parameter configured. If the GPO is modified while there are sessions on the server, the GPO sets SPI_SETSCREENSAVEACTIVE = TRUE, causing any active sessions to go into a screen saver when left idle. The GPO setting can be found under *User Configuration >Administrative Templates > Control Panel > Display*. View the setting by double-clicking *Screen Saver*. *Resolution* Log off all active sessions and relaunch them. This sets the SPI_SETSCREENSAVEACTIVE parameter in the session to FALSE again. -Or- Make sure all sessions are logged off the server before modifying any GPO with the screen saver setting enabled. *More Information* *http://msdn2.microsoft.com/en-us/library/ms724947.aspx* One example of code used is available from the CodeGuru developer Web site. *http://www.codeguru.com/cpp/misc/misc/screensavers/article.php/c419/* -- Jim Kenzig Microsoft MVP - Terminal Services http://www.thinhelp.com Citrix Technology Professional Provision Networks VIP CEO The Kenzig Group http://www.kenzig.com Blog: http://www.techblink.com