JonnyThunder Posted March 12, 2008 Share Posted March 12, 2008 Hello! I was wondering if there is any clever and cunning way I can overlay text on the desktop of my computer. To clarify, I work in an organisation of about 5000 users (im in IT!). We currently use a tool called BGInfo which runs on each startup, and basically takes a background image, pastes some text on it (like their IP address / context etc) and then applies the background as their desktop image. I wondered if Autoit was capable of doing something similar. I saw demo scripts for using Alpha channels to overlay bitmaps but it's not quite what im after. Any thoughts would be appreciated. Thanks, Simon P.s. I've got to admit - V3 of Autoit is pretty amazing! We've used it to create heaps of GUI tools for the support guys. Link to comment Share on other sites More sharing options...
Moderators SmOke_N Posted March 12, 2008 Moderators Share Posted March 12, 2008 http://www.autoitscript.com/forum/index.ph...st&p=134012 Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer. Link to comment Share on other sites More sharing options...
JonnyThunder Posted March 12, 2008 Author Share Posted March 12, 2008 Ah ok, thanks for that. I did search but didn't find anything. Link to comment Share on other sites More sharing options...
jpam Posted March 12, 2008 Share Posted March 12, 2008 (edited) i paint it directly on the wallpaper mybe this has some use for you be carefull , i use a copy of my wallpaper in the "(@WindowsDir & "\Web\Wallpaper"\" it must be jpg the jpg stay untouched, it saves a new .bmp wallpaper with text back to the windows dir and refresh your desktop with the .bmp created wallpaper expandcollapse popup#include <Prospeed.au3> GetDesktopHDC() $bitmap = CreateExtBmp(300, 500) SetText($bitmap, "Text on desktop", 20, 20, 0xFFFFFF, 0x000000, 14, 400, "Arial") $wallpaper = LoadExtImage(@WindowsDir & "\Web\Wallpaper\WindowsXP15.jpg") CopyExtBmp($wallpaper,700,10,300,500,$bitmap,0,0,-1) SaveExtImage($wallpaper, @WindowsDir & "\Web\Wallpaper\WindowsXP15.bmp", 0, 10) DllCall("User32.dll", "int", "SystemParametersInfo", _ "int", 20, _ "int", 0, _ "string", @WindowsDir & "\Web\Wallpaper\WindowsXP15.bmp", _ "int", 0x01) FreeExtBmp($bitmap) FreeExtBmp($wallpaper) Func SetText($S_Destination, $S_Text, $S_x, $S_y, $S_TextColor, $S_BKColor, $Font_H, $Font_W, $Font_Name) $font = DllCall("gdi32.dll", "int", "CreateFontA", _ "int", $Font_H, _ "int", 0, _ "int", 0, _ "int", 0, _ "int", $Font_W, _ "Int", 0, _ "int", 0, _ "int", 0, _ "int", 0, _ "int", 0, _ "int", 0, _ "int", 0, _ "int", 0, _ "str", $Font_Name) $oldfont = DllCall("gdi32.dll", "int", "SelectObject", _ "hwnd", $S_Destination, _ "int", $font[0]) DllCall("gdi32.dll", "int", "SetBkMode", _ "hwnd", $S_Destination, _ "int", "TRANSPARENT") DllCall("gdi32.dll", "int", "SetTextColor", _ "hwnd", $S_Destination, _ "int", $S_TextColor) DllCall("gdi32.dll", "int", "SetBkColor", _ "hwnd", $S_Destination, _ "int", $S_BKColor) DllCall("gdi32.dll", "int", "TextOutA", _ "hwnd", $S_Destination, _ "int", $S_x, _ "int", $S_y, _ "str", $S_Text, _ "int", StringLen($S_Text)) DllCall("gdi32.dll", "int", "selectObject", _ "hwnd", $S_Destination, _ "int", $oldfont[0]) DllCall("gdi32.dll", "int", "DeleteObject", _ "hwnd", $font[0]) EndFunc Edited March 12, 2008 by jpam Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now