#include <WindowsConstants.au3>
#include <WinAPIEx.au3>
ShellExecute('notepad.exe')
WinWait('[CLASS:Notepad]')
$hWnd = WinGetHandle("[CLASS:Notepad]")
$WP = WinGetPos($hWnd)
$hAero = GUICreate('Notepad', $wp[2], $wp[3])
WinSetTrans($hAero, '', 180)
$GUI = GUICreate('Notepad', $wp[2], $wp[3], 0, 0, $WS_POPUP, $WS_EX_MDICHILD, $hAero)
GUISetState(@SW_SHOW, $hAero)
GUISetState(@SW_SHOW, $GUI)
_WinSetStyle($hWnd, $WS_POPUP, $WS_EX_COMPOSITED)
_WinAPI_SetParent($hWnd, $GUI)
WinMove($hWnd, '', 0, 0)
While 1
If Not ProcessExists('notepad.exe') Then Exit
Switch GUIGetMsg()
Case -3
ProcessClose('notepad.exe')
Exit
EndSwitch
WEnd
Func _WinSetStyle($hWnd, $nStyle = -1, $nExStyle = 0)
Local Const $GWL_STYLE = -16, $GWL_EXSTYLE = -20
Local Const $SWP_NOMOVE = 0x2, $SWP_NOSIZE = 0x1, $SWP_SHOWWINDOW = 0x40, $SWP_NOZORDER = 0x4
Local $iFlags = BitOR($SWP_SHOWWINDOW, $SWP_NOSIZE, $SWP_NOZORDER)
If $nStyle = -1 Then
$nStyle = BitOR($WS_MINIMIZEBOX, $WS_CAPTION, $WS_POPUP, $WS_SYSMENU)
EndIf
$Pos = WinGetpos($hWnd)
$x = $Pos[0]
$y = $Pos[1]
DllCall("User32.dll", "int", "SetWindowLong", "hwnd", $hWnd, "int", $GWL_STYLE, "int", $nStyle)
DllCall("User32.dll", "int", "SetWindowLong", "hwnd", $hWnd, "int", $GWL_EXSTYLE, "int", $nExStyle)
DllCall("User32.dll", "int", "SetWindowPos", "hwnd", $hWnd, "hwnd", 0, "int", $x + 1, "int", $y + 1 , "int", 0, "int", 0, "int", $iFlags)
EndFunc