Wallpaper Engine

Wallpaper Engine

View Stats:
Can't start the screensaver via a .bat file if the .bat file also runs LockWorkStation
This is a followup to a now-deleted post I made an hour ago. The issue there is no longer relevant. However, I still can't get the screensaver to work.

So, I have a .bat file that runs wpxscreensaver64.scr (DON'T FORGET the /s, for some reason the default behaviour for running all screensavers is to open the settings rather than acting like a doubleclick. thanks Microsoft.) and then runs Rundll32.exe user32.dll LockWorkStation.

@echo off cd PATH C:\Windows\System32 start wpxscreensaver64.scr /s cd PATH C:\Windows\System32 start Rundll32.exe user32.dll,LockWorkStation

If I comment out the LockWorkStation part it runs the screensaver correctly. But it will not lock the computer, leaving my PC vulnerable to physical attack. (yes, I have all the settings ticked for it to lock instantly. It still doesn't, even after 20 seconds.)
If I have both parts of my program active then it just acts like Win-L, ignoring the screensaver. If I swap the parts around (so screensaver runs after lockworkstation) it still doesn't work.
So, is there any other way to lock the computer that won't actually open the lock screen? Because that's ♥♥♥♥♥♥♥ up my screensaver and I want to make the most of this program, which was a gift from a friend.

I know this seems a little bit off-topic, trust me I tried for the last hour and a bit to ring microsoft support about it. Those bastards cut off my phone number as soon as they learnt I was a home user so I couldn't even ring a second time pretending I was a business.

EDIT: if I run from Terminal I get two errors saying "the filename, directory name, or volume label syntax is incorrect", though this very clearly doesn't stop the program from finding both files. Does this help in any way or is it a red herring?
Last edited by Brianne_Railway; Sep 25, 2023 @ 3:04am
< >
Showing 1-1 of 1 comments
Tim  [developer] Sep 25, 2023 @ 4:29am 
I think the problem is that you're not launching the Windows screensaver functionality but rather you are launching a program (which happens to be a screensaver which happens to be Wallpaper Engine). I don't know how to launch the Windows screensaver logic via batch scripts or if it's even possible but the way you set it up, it kind of makes sense that it doesn't work.

If you add a timeout between the commands, you can see that it actually works but locking Windows immediately shows the lock screen because the screensaver is running inside of your Windows user session and is invisible outside of your user session:

@echo off cd PATH C:\Windows\System32 start wpxscreensaver64.scr /s timeout /t 2 /nobreak cd PATH C:\Windows\System32 start Rundll32.exe user32.dll,LockWorkStation

Long story short, this isn't really a Wallpaper Engine question and I am just answering for the sake of my own curiosity. You would need to find a way to trigger the screensaver command directly without ever considering anything about Wallpaper Engine. The Wallpaper Engine screensaver is just an "option" in the Windows screensaver functionality, directly launching the Wallpaper Engine screensaver is not the same as directly launching the Windows screensaver, if that makes sense. Screensavers in Windows are essentially just normal programs, they are fully unaware themselves that they are screensavers.
< >
Showing 1-1 of 1 comments
Per page: 1530 50

Date Posted: Sep 25, 2023 @ 2:59am
Posts: 1