How can I display words on the desktop?
a question gleam in my mind.. :lol:
Posted on 2006-04-11 05:00:39 by Eric4ever
If you are talking about text inside a window, Iczelion's Tutorial 4 and Tutorial 5 are good examples of how to do this.
Posted on 2006-04-11 12:25:21 by SpooK
I think he want to draw text onto "root window"
IMHO get dc of "root window" and draw text.
Posted on 2006-04-11 12:31:37 by s5vi

If you are talking about text inside a window, Iczelion's Tutorial 4 and Tutorial 5 are good examples of how to do this.

I mean not a text inside a window, just looks like on the desktop, perhaps the text inside a translucent window
Posted on 2006-04-11 20:36:47 by Eric4ever
So why won't you make a transparent window and write inside it?
Posted on 2006-04-12 00:10:40 by ti_mo_n
People do have a tendency to answer their own questions given enough information... just means you are thinking :)
Posted on 2006-04-12 00:39:27 by SpooK
But I don't know how to create a translucent window... :shock:
Any help would be greatly appreciated.
Posted on 2006-04-12 20:47:56 by Eric4ever
iirc there is/was a tutorual about it on iczelion's site..?
Posted on 2006-04-12 21:07:47 by ti_mo_n
An oversight I intend to correct with our tutorial translation project. Ours only goes up to 20 so far (English) and the original was 32 of them AFAIK.
Posted on 2006-04-12 21:26:11 by SpooK
This is a very simple problem, I am sorry I did not see this thread sooner...

invoke FindWindow, "progman", 0
invoke FindWindowEx, eax, 0, "SHELLDLL_DefView", 0
invoke FindWindowEx, eax, 0, "SysListView32", 0
mov , eax
invoke GetDC,eax
mov ,eax
invoke TextOut,,0,0,"This is a test",15
invoke ReleaseDC,,

GoAsm syntax. Ofcourse the text is lost when the desktop repaints itself.
Posted on 2006-04-12 21:47:19 by donkey
Is there any particular reason you do the FindWindowEx stuff? GetDC with NULL/0 hwnd will return a DC for the entire screen. (Also, consider that alternative shells like litestep, geoshell, blackbox probably won't have "progman" running :)).
Posted on 2006-04-13 06:36:31 by f0dder
Hi f0dder,

Probably not, I did not spend alot of time on it, just thought to get the DC for the actual listview that is displayed. I didn't even think to try any other way as the problem seemed sort of ho-hum to me but I wanted to provide a working answer to the question.
Posted on 2006-04-13 06:39:43 by donkey
The method Donkey used is how I would do it.
but it depends on what you want to achive.

using GetDC will write on all windows, which can get messy and not
all the windows in the way will know about the drawing and parts of
what you draw will stay on those windows untill something couse them
to repaint. So I would use the method Donkey used to draw only on
the desktop and not all the windows that may be showing.

Posted on 2006-04-13 16:23:26 by Zcoder
Hm yeah, good piece of advice, zcoder. I assume donkey's method would only write to the actual desktop, not the "screen". (ie, only the background, not "all windows"). The problem, of course, being that donkey's method will only work with a standard vanilla windows explorer.exe shel...
Posted on 2006-04-13 16:26:28 by f0dder