Discussion:
Use IsWindowVisible instead of GetWindowLong(GWL_STYLE) & WS_VISIBLE as a test for desktop visibility
Ferenc Wagner
2005-03-02 21:51:52 UTC
Permalink
let's see if IsWindowVisible() better detects a not visible desktop.
Ah, fine, this may put some momentum into the situation!
--
Feri.
Robert Shearman
2005-03-02 22:05:20 UTC
Permalink
let's see if IsWindowVisible() better detects a not visible desktop.
I would have thought the suggestions at this page would be better:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/interactive_services.asp

Rob
Dmitry Timoshkov
2005-03-03 08:09:48 UTC
Permalink
Post by Robert Shearman
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/interactive_services.asp
"To determine whether a service is running as an interactive service,
call the GetProcessWindowStation function to retrieve a handle to the
window station, and the GetUserObjectInformation function to test whether
the window station has the WSF_VISIBLE attribute."

Good suggestion. Although according to

http://test.winehq.org/data/200502231000/2000_IDWASEMPTY_5/user32:msg.txt
msg.c:2524: Test failed: IsWindowVisible() should return TRUE

IsWindowVisible() detects an invisible desktop under win2k just fine.
According to test.winehq.org results Win95 and Win98 are not affected
by desktop visibility at all (thanks to their broken services model),
and IsWindowVisible() doesn't detect an invisible desktop under NT40.
--
Dmitry.
Loading...