cuando no puedas resolver algo con el vb6 debes averiguar sobre las funciones de windows ( APIs de windows):
'FindWindow: Busca una ventana por su classname o por su windowname(barra de titulo)
Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
'parametros:
'lpClassName: nombre de la clase
'windowname: barra de titulo
'EnumChildWindows: Enumera las ventanas hijas (command, textbox,etc) de una ventana padre.
Declare Function EnumChildWindows Lib "user32" (ByVal hWndParent As Long, ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long
'parametros:
'hwndParent: hwnd ventana padre
'lpEnumFunc: direccion de la funcion que recibira los hwnd de las ventanas hijas, por cada ventana hija
encontrada esta llamara a la funcion pasada
'SendMessage: Envia un mensaje a un hwnd (los mensajes son un monton)
Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
'hwnd: hwnd donde se envia el mensaje
'wMsg: mensaje que se va enviar (en este caso WM_GETTEXT)
'wParam: creo que iria el tamaño de la cadena inicializada
'lParam: variable donde se guardara el texto obtenido
Form1:
'agregar estos controles
'1 label con el caption "Titulo Ventana"
'1 textbox (text1) al lado derecho del label
'1 command (command1) debajo del textbox
'1 listbox (list1) al lado derecho del command1
Option Explicit
Private Sub Command1_Click()
Dim hwnd As Long, Titulo As String
Titulo = Text1.Text
'busca la ventana pasandole la barra de titulo
' si lo encuentra devolvera el HWND de la ventana ,sino 0
hwnd = FindWindow(vbNullString, Titulo)
If hwnd <> 0 Then
List1.Clear
Contador = 0
'enumera las ventanas hijas pasandole el HWND de la ventana padre y la direccion de la funcion
'que va recibir los HWND de las ventanas hijas (AddressOf EnumChildProc)
Call EnumChildWindows(hwnd, AddressOf EnumChildProc, ByVal 0&)
Else
MsgBox "No se encontro la ventana", vbCritical, ""
End If
End Sub
Private Sub Form_Load()
Command1.Caption = "Enumerar Ventanas Hijas"
Label1.Caption = "Titulo ventana: "
End Sub
en un module bas: module1
Option Explicit
Declare Function EnumChildWindows Lib "user32" (ByVal hWndParent As Long, ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long
Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Public Const WM_GETTEXT = &HD
Public Contador As Long
'funcion encargada de recibir cada HWND de las ventanas hijas
Public Function EnumChildProc(ByVal hwnd As Long, ByVal lParam As Long) As Long
Dim Texto As String, Pos As Long
'crea un espacios de 1000 caracteres para que almacene ahi el texto obtenido
Texto = Space(1000)
'aki obtiene el texto del HWND de la ventana hija y lo almacena en variable "Texto"
Call SendMessage(hwnd, WM_GETTEXT, 1000, ByVal Texto)
'busca el caracter nulo (este indica el fin de la cadena)
Pos = InStr(1, Texto, Chr(0))
'si lo encuentra coge los caracteres excepto el nulo
If Pos > 0 Then Texto = Left(Texto, Pos - 1)
'contador para saber el orden de la ventana hija
Contador = Contador + 1
'agrega el HWND y el texto de la ventana hija recibida
Form1.List1.AddItem Contador & "- hWnd Hija: " & hwnd & " / Texto: " & Texto
EnumChildProc = 1
End Function
con este codigo sabras los HWND de las ventanas hijas y sabras el orden que tiene la ventana de la q kieres obtener el texto, con ese ejempo puedes hacer otro codigo para que tome el dato que kieres de la ventana hijas que kieres.
para mas info busca info sobre las apis de windows en VB6.