Da wirst du dich eingehend mit Windows-API beschäftigen müssen.
Eine grobe Übersicht hab ich im Google-Cache gefunden (Original stammt von Spotlight.de)
--------------------------------------
Re: Steuerelemente einer Anwendung per API ermitteln
Hier mal eine Liste von API's, die in solchen Fällen Verwendung finden.
EnumWindows
FindWindow
GetDesktopWindow
GetForegroundWindow
GetNextWindow
GetParent
GetWindow
GetWindowText
GetWindowTextLength
IsChild
IsWindow
IsWindowUnicode
IsWindowVisible
IsZoomed
GetClassInfo
GetClassInfoEx
GetClassLong
GetClassName
GetClassWord
GetWindowLong
GetWindowWord
Die Liste ist nicht unbedingt vollständig, du wirst vermutlich auch noch andere API's brauchen, andererseits wirst du nicht alle angegebenen API's brauchen. Die überschneiden sich zum Teil in ihrer Funktionalität.
Wenn man entsprechende Infos hat, kann man mit FindWindow oder GetForegroundWindow das HWND der Anwendung holen,
wenn nicht, kann man von GetDesktopWindow ausgehend mit GetWindow (Parameter uCmd: GW_CHILD , GW_HWNDNEXT) alle Windows durchgehen, oder mit EnumWindows.
Wenn man das richtige HWND hat, kann man mit EnumChildWindows oder GetWindow die Steuerelemente durchgehen.
Über die entsprechenden Get...-Funktionen kann man dann die Eigenschaften der Steuerelemente auslesen.
---------------------------------------------
Besser kann ichs auch nicht erklären, mit GetClassLong dürftest du die meisten Infos über das Fenster rausfinden.
Darf ich fragen, was du eigentlich vor hast?