#include <WinAPIEx.au3>
Run("calc.exe")
$wnd = WinWaitActive("[class:CalcFrame]")
MsgBox(0, "", GetClassNameNN($wnd, 797, 458))
Func GetClassNameNN($ParentWnd, $X, $Y)
Local $Control, $Class, $Wins, $Inst = 0
If Not IsHWnd($ParentWnd) Then Return ""
Local $Point = DllStructCreate($tagPoint)
DllStructSetData($Point, "x", $X)
DllStructSetData($Point, "y", $Y)
$Control = _WinAPI_WindowFromPoint($Point)
If Not $Control Then Return ""
$Class = _WinAPI_GetClassName($Control)
If @error Then Return ""
$Wins = _WinAPI_EnumChildWindows($ParentWnd, True)
If IsArray($Wins) Then
For $i = 1 To $Wins[0][0]
If $Wins[$i][1] = $Class Then $Inst += 1
If $Wins[$i][0] = $Control Then Return $Class & $Inst
Next
EndIf
Return ""
EndFunc