Foros del Web » Programando para Internet » Javascript »

Mshtml y c#

Estas en el tema de Mshtml y c# en el foro de Javascript en Foros del Web. Mi aplicación usa el control WebBrowser para desplegar una página de la cual tengo que estar navegando automaticamente por ella (uso mshtml), en un punto ...
  #1 (permalink)  
Antiguo 28/08/2008, 10:09
 
Fecha de Ingreso: agosto-2008
Mensajes: 1
Antigüedad: 15 años, 8 meses
Puntos: 0
Mshtml y c#

Mi aplicación usa el control WebBrowser para desplegar una página de la cual tengo que estar navegando automaticamente por ella (uso mshtml), en un punto de esta interacción con la página tengo que llamar a la siguiente función:



webBrowser1.Document.Window.Frames["body"].Document.InvokeScript("js_ExpCon");

//CODIGO EN C# PARA

//INVOCAR LA FUNCION JAVASCRIPT



function js_ExpCon() {
if (confirm('Exportar consulta a archivo ?')) { js_SelFmt();
document.FrmCon.hidTipSal.value = "3";
document.FrmCon.hidVerSal.value = "2";
document.FrmCon.action = document.FrmCon.hidPagFte.value;
document.FrmCon.submit();
}
return (true);
}



Debido a que esta función lanza una confirmación [ if (confirm('Exportar consulta a archivo ?')) ] mi interaccion automatica con la página se vuelve nula ya que el usuario tiene que darle aceptar o cancelar a esta "confirmación". Mi pregunta es, si existe algun mecanismo para darle click en aceptar a esta confirmación desde codigo de C#.



Otra solución que se me ocurre es solo ejecutar las lineas que estan dentro del if (linea por linea), pero no he encontrado algo por la internet; o sea algo asi:



webBrowser1.Document.Window.Frames["body"].Document.EjecutarLinea("document.FrmCon.hidTipSal .value =\"3\";")



Otra solucion que se me ocurre es crear mi propia función de JavaScript y mandarla llamar, pero tambien no he encontrado nada en internet ;-(



Un saludo, gracias por la ayuda.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:35.