executing "xdg-screensaver lock" (was: user32.dll: Add stub for LockWorkStation)

Paul Chitescu paulc at voip.null.ro
Tue Sep 9 08:21:06 CDT 2008

On Tuesday 09 September 2008 01:46:37 Steven Edwards wrote:
> On Mon, Sep 8, 2008 at 2:32 PM, Paul Chitescu <paulc at voip.null.ro> wrote:
> > Changelog:
> >        user32.dll: Stub for LockWorkStation()
> >
> > Not sure if user_main.c is the right place but I put it together with
> > ExitWindowsEx.
> Would you mind taking a shot at implementing this properly? It was on
> my TODO but I most likely will never get back to it. Here is my patch
> from before which was wrong.
> http://www.winehq.org/pipermail/wine-patches/2007-May/039240.html
> What we need to do is use SendMessage to talk to the existing
> explorer.exe process and have it do the locking. Feel free to use what
> i have to make a patch if your interested.

Good idea but have to use one of wine's spawn functions to execute 
xdg-screensaver. exec() doesn't work at all like WinExec(), it would replace 
the wine process witn the screensaver.

I intend to make another just implementation patch once it works properly. 
Some things can go wrong executing system's native (*nix) programs from wine.

Now a question to others - does it look OK to call spawnvp (from wine/port.h) 
from user32.dll? Throughout wine it is used only in implementing various MS 
runtime libraries and in the utility programs winebrowser, winemenubuilder 
and winegcc.


Paul Chitescu

More information about the wine-patches mailing list