Ich kenne jetzt WinSight leider nicht und weiß daher auch nicht, wie das die ChildWindows darstellt (eingerückt oder wie?).
Wenn <<Overlapped {#32770
ialog} X.exe (177,150)-(1101,846) "XXX Hauptmenü">> das direkte ChildWindow von <<Overlapped {XXXmain} X.exe (0,0)-(0,0) "XXX Hauptmenü" >> ist, dann müsste <<FindWindowEx(twH1, 0, '#32770
ialog', 'XXX Hauptmenü')>> eigentlich ein richtiges Ergebnis bringen.
Wenn allerdings <<Overlapped {#32770
ialog} X.exe (177,150)-(1101,846) "XXX Hauptmenü"
>> das ChildWindow von <<Overlapped {XXXcon} X.exe (hidden) "XXX for
Win32">> ist, dann musst du natürlich zuerst nochmal nach der
Handle dieses Windows suchen und danach FindWindowEx nochmal dann eben mit diesem
Handle als ersten Parameter starten.