Visual Basic - Pasar Texto a campos dentro de una página Web

Life is soft - evento anual de software empresarial
 
Vista:

Pasar Texto a campos dentro de una página Web

Publicado por Arnaldo González (2 intervenciones) el 24/04/2006 18:24:47
Saludos cordiales:

Tengo una forma creada con dos controles: un control de texto (textbox) y un boton. Al mismo tiempo tengo una pagina web ya desplegada en donde hay una serie de campos (TextBox) a donde quiero escribir. Necesito que al apretar el boton en mi forma, me tome la data que entré en el Textbox de al forma y la pase al textbox de la página Web. Así de sencillo: de un lado a otro...pero no tan sencillo para mí por lo visto :-)

Utilizar el método de SENDKEYS no sería eficiente ya que tendría que estar utilizando {TAB} para llevar el foco al control correspondiente y este no cae en el mismo lugar todo el tiempo. Necesito alguna forma de hacer referencia a Internet Explorer, determinar la cantidad de controles de tipo Textbox que hayan en la página activa y llevar el foco al primero de estos para entonces enviar la data al mismo.

He utilizado la referencia a SHDOCVW.DLL con el siguiente código:

Sub cmdEJECUTAR_Click()
Dim IExp as Internet Explorer
Set IExp = NEW Internet Explorer ' Me da problemas luego ya que pierde conexión
IExp.Visible = True
IExp.Navigate [DIRECCION URL DE LA PAGINA]
Do Until IExp.ReadyState = READYSTATE_COMPLETE
DoEvents
Loop
If IExp.ReadyState = READYSTATE_COMPLETE then
[Código que necesito para mover la data al campo del Browser]
End If
End Sub

Para el código que necesito estaba pensando en algo dentro de la vecindad de:

[Control tipo TextBox del Browser].Text (o .Value) = Me.Text1.Text (o .Value)

Lamentablemente no sé cómo referenciar al Explorador una vez se ejecuta este código, para referenciar a su vez a los controles dentro de la página web, ya que al utilizar el método NEW esta creando una nueva instancia de Internet Explorer y luego IExp pierde su conexión con este. Necesito alguna forma de hacer el SET de la forma correcta para referenciar el Explorador y a su vez las colecciones y objetos dentro de la pagina.

Su ayuda es sumamente apreciada!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Pasar Texto a campos dentro de una página Web

Publicado por Cecilia Colalongo (3116 intervenciones) el 24/04/2006 22:32:30
En lugar de instanciar ventanas y hacer subclases ¿no será más fácil que envíes los datos a la página que corresponde?

Puedes usar XMLHTTP y emular GET o POST según la página:

Dim xmlhttp As MSXML2.ServerXMLHTTP40

Set xmlhttp = New MSXML2.ServerXMLHTTP40

xmlhttp.open "POST", "http://www.mipagina.com/pagina.asp", False

xmlhttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"

xmlhttp.send "parametro1=valor1¶metro2=valor2"

Debug.Print xmlhttp.responseText
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar