One solution that one could suggest is to periodically look for a special \'Screen-saver\' desktop, and if it\'s present then count it as a running screensaver.
But
search processes for a process with .scr in its .MainModule.FileName