Jump to content
Sign in to follow this  

Custom Desktop

Recommended Posts



Is there any way to stick a GUI to the desktop?

I want to make a "Custom Desktop" application that will run over the current "Windows Desktop".

Any idea?

Share this post

Link to post
Share on other sites

take a look here

And this is a example



$gui = GUICreate("PHD Example")

Until GUIGetMsg() = -3

; ===============================================================================================================================
; <_WinGetDesktopHandle.au3>
; Function to get the Windows' Desktop Handle.
; Since this is no longer a simple '[CLASS:Progman]' on Aero-enabled desktops, this method uses a slightly
; more involved method to find the correct Desktop Handle.
; Author: Ascend4nt, credits to Valik for pointing out the Parent->Child relationship: Desktop->'SHELLDLL_DefView'
; ===============================================================================================================================

Func _WinGetDesktopHandle()
Local $i,$hDeskWin,$hSHELLDLL_DefView,$hListView
; The traditional Windows Classname for the Desktop, not always so on newer O/S's
; Parent->Child relationship: Desktop->SHELLDLL_DefView
$hSHELLDLL_DefView=ControlGetHandle($hDeskWin,'','[CLASS:SHELLDLL_DefView; INSTANCE:1]')
; No luck with finding the Desktop and/or child?
If $hDeskWin='' Or $hSHELLDLL_DefView='' Then
; Look through a list of WorkerW windows - one will be the Desktop on Windows 7+ O/S's
For $i=1 To $aWinList[0][0]
$hSHELLDLL_DefView=ControlGetHandle($aWinList[$i][1],'','[CLASS:SHELLDLL_DefView; INSTANCE:1]')
If $hSHELLDLL_DefView<>'' Then
; Parent->Child relationship: Desktop->SHELDLL_DefView->SysListView32
$hListView=ControlGetHandle($hSHELLDLL_DefView,'','[CLASS:SysListView32; INSTANCE:1]')
If $hListView='' Then Return SetError(-1,0,'')
Return SetExtended($hListView,$hDeskWin)
Edited by PlayHD

Share this post

Link to post
Share on other sites

wow, thank you very much PlayHD

Share this post

Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this