start iexplorer ejecutar internet-explorer batch-file

internet-explorer - start - ejecutar iexplorer cmd



¿Cómo abrir múltiples ventanas/pestañas de Internet Explorer desde un archivo por lotes? (8)

Me gustaría que un archivo por lotes inicie dos programas separados y luego cierre la ventana de la línea de comando. En realidad, para aclarar, estoy lanzando Internet Explorer con dos URL diferentes.

Hasta ahora tengo algo como esto:

start "~/iexplore.exe" "url1" start "~/iexplore.exe" "url2"

Lo que obtengo es una instancia de Internet Explorer con solo la segunda URL cargada. Parece que el segundo está reemplazando al segundo. Me parece recordar una sintaxis donde cargaría una nueva ventana de línea de comando y pasaría el comando para ejecutar en carga, pero no puedo encontrar la referencia.

Como segunda parte de la pregunta: ¿cuál es una buena URL de referencia para guardar para los tiempos que necesita para escribir un archivo de lote rápido?

Editar: he marcado una respuesta, porque funciona. Ahora tengo dos ventanas abiertas, una para cada URL. (¡gracias!) Lo curioso es que sin el enfoque / d utilizando mi sintaxis original obtengo resultados diferentes según tenga abierta una instancia preexistente de Internet Explorer.

  • Si lo hago, obtengo dos pestañas nuevas para mis dos URL (¡dulce!)
  • Si no, obtengo solo una pestaña final para la segunda URL que pasé.

Hay una configuración en las opciones de IE que controla si debe abrir nuevos enlaces en una ventana existente o en una nueva ventana. No estoy seguro de si puedes controlarlo desde la línea de comandos, pero tal vez cambiar esta opción sea suficiente para ti.

En IE7 parece que la opción es "Reutilizar ventanas para iniciar accesos directos (cuando la exploración con pestañas está deshabilitada)".


Prueba esto en tu archivo por lotes:

@echo off start /d "C:/Program Files/Internet Explorer" IEXPLORE.EXE www.google.com start /d "C:/Program Files/Internet Explorer" IEXPLORE.EXE www.yahoo.com


Esto funcionó para mí:

start /d IEXPLORE.EXE www.google.com start /d IEXPLORE.EXE www.yahoo.com

Pero, por alguna razón, ¿los abriste en Firefox?

Intenté esto pero me abrió sitios en dos ventanas diferentes:

start /d "C:/Program Files/Internet Explorer" IEXPLORE.EXE www.google.com start /d "C:/Program Files/Internet Explorer" IEXPLORE.EXE www.yahoo.com


Gracias por el consejo Rodger.

Para mí funcionó de la siguiente manera:

@echo off start /d "" IEXPLORE.EXE www.google.com start /d "" IEXPLORE.EXE www.yahoo.com

Con la configuración en Internet Explorer 8:

  • siempre abre ventanas emergentes en una nueva pestaña
  • una nueva pestaña en la ventana actual

[email protected]


Gracias Marcelo. Esto funcionó para mí. Quería abrir una nueva ventana IE y abrir dos pestañas, así que modifiqué el código:

start iexplore.exe website PING 1.1.1.1 -n 1 -w 2000 >NUL START /d iexplore.exe website


Intente esto para que tenga tiempo suficiente para que comience el primer proceso ... de lo contrario generará 2 procesos porque el primero no se está ejecutando cuando ejecuta el segundo ... Esto puede suceder si su computadora es demasiado rápida ...

@echo off start /d iexplore.exe http://google.com PING 1.1.1.1 -n 1 -w 2000 >NUL START /d iexplore.exe blablabla

reemplazar blablabla con otra dirección


Por supuesto, es una publicación anterior, pero solo para las personas cómo la encontrará a través del motor de búsqueda.

Otra solución es ejecutarlo así para IE9 y posterior

iexplore.exe" -noframemerging http://google.com iexplore.exe" -noframemerging http://gmail.com

-noframemerging significa ejecutar IE de forma independiente. Por ejemplo, si desea ejecutar el navegador 2 e iniciar sesión como nombre de usuario diferente, no funcionará si solo ejecuta 2 IE. pero con la opción de "no fusionar", funcionará. -noframemerging funciona para IE9 y versiones posteriores, para versiones anteriores como IE8 es -nomerge

generalmente creo 1 pero archivo como este run_ie.bat

"c:/Program Files (x86)/Internet Explorer/iexplore.exe" -noframemerging %1

y creo otro archivo bat como este run_2_ie.bat

start run_ie.bat http://google.com start run_ie.bat http://yahoo.com


Puede usar cualquiera de estos dos scripts para abrir las URL en pestañas separadas en una (única) ventana de IE. Puede llamar a cualquiera de estos scripts desde su secuencia de comandos por lotes (o en el símbolo del sistema):

JavaScript
Crea un archivo con un nombre como: "urls.js" :

var navOpenInNewWindow = 0x1; var navOpenInNewTab = 0x800; var navOpenInBackgroundTab = 0x1000; var intLoop = 0; var intArrUBound = 0; var navFlags = navOpenInBackgroundTab; var arrstrUrl = new Array(3); var objIE; intArrUBound = arrstrUrl.length; arrstrUrl[0] = "http://bing.com/"; arrstrUrl[1] = "http://google.com/"; arrstrUrl[2] = "http://msn.com/"; arrstrUrl[3] = "http://yahoo.com/"; objIE = new ActiveXObject("InternetExplorer.Application"); objIE.Navigate2(arrstrUrl[0]); for (intLoop=1;intLoop<=intArrUBound;intLoop++) { objIE.Navigate2(arrstrUrl[intLoop], navFlags); } objIE.Visible = true; objIE = null;


VB Script
Crea un archivo con un nombre como: "urls.vbs" :

Option Explicit Const navOpenInNewWindow = &h1 Const navOpenInNewTab = &h800 Const navOpenInBackgroundTab = &h1000 Dim intLoop : intLoop = 0 Dim intArrUBound : intArrUBound = 0 Dim navFlags : navFlags = navOpenInBackgroundTab Dim arrstrUrl(3) Dim objIE intArrUBound = UBound(arrstrUrl) arrstrUrl(0) = "http://bing.com/" arrstrUrl(1) = "http://google.com/" arrstrUrl(2) = "http://msn.com/" arrstrUrl(3) = "http://yahoo.com/" set objIE = CreateObject("InternetExplorer.Application") objIE.Navigate2 arrstrUrl(0) For intLoop = 1 to intArrUBound objIE.Navigate2 arrstrUrl(intLoop), navFlags Next objIE.Visible = True set objIE = Nothing


Una vez que decide sobre "JavaScript" o "VB Script" , tiene algunas opciones:

Si tus URL son estáticas:

1) Puede escribir el archivo de script "JS / VBS" (arriba) y luego simplemente llamarlo desde un script por lotes.

Desde el script por lotes (o el símbolo del sistema), llame al script "JS / VBS" de la siguiente manera:

cscript //nologo urls.vbs cscript //nologo urls.js


Si las URL cambian con poca frecuencia:

2) Puede hacer que el script por lotes escriba el script "JS / VBS" sobre la marcha y luego llamarlo.


Si las URL pueden ser diferentes cada vez:

3) Use las secuencias de comandos "JS / VBS" (abajo) y pase las URL de las páginas para abrirlas como argumentos de línea de comando:

JavaScript
Crea un archivo con un nombre como: "urls.js" :

var navOpenInNewWindow = 0x1; var navOpenInNewTab = 0x800; var navOpenInBackgroundTab = 0x1000; var intLoop = 0; var navFlags = navOpenInBackgroundTab; var objIE; var intArgsLength = WScript.Arguments.Length; if (intArgsLength == 0) { WScript.Echo("Missing parameters"); WScript.Quit(1); } objIE = new ActiveXObject("InternetExplorer.Application"); objIE.Navigate2(WScript.Arguments(0)); for (intLoop=1;intLoop<intArgsLength;intLoop++) { objIE.Navigate2(WScript.Arguments(intLoop), navFlags); } objIE.Visible = true; objIE = null;


VB Script
Crea un archivo con un nombre como: "urls.vbs" :

Option Explicit Const navOpenInNewWindow = &h1 Const navOpenInNewTab = &h800 Const navOpenInBackgroundTab = &h1000 Dim intLoop Dim navFlags : navFlags = navOpenInBackgroundTab Dim objIE If WScript.Arguments.Count = 0 Then WScript.Echo "Missing parameters" WScript.Quit(1) End If set objIE = CreateObject("InternetExplorer.Application") objIE.Navigate2 WScript.Arguments(0) For intLoop = 1 to (WScript.Arguments.Count-1) objIE.Navigate2 WScript.Arguments(intLoop), navFlags Next objIE.Visible = True set objIE = Nothing


Si se llama al script sin ningún parámetro, estos devolverán %errorlevel%=1 , de lo contrario devolverán %errorlevel%=0 . No se realiza ninguna verificación con respecto a la "validez" o "disponibilidad" de ninguna de las URL.


Desde el script por lotes (o el símbolo del sistema), llame al script "JS / VBS" de la siguiente manera:

cscript //nologo urls.js "http://bing.com/" "http://google.com/" "http://msn.com/" "http://yahoo.com/" cscript //nologo urls.vbs "http://bing.com/" "http://google.com/" "http://msn.com/" "http://yahoo.com/"

O incluso:

cscript //nologo urls.js "bing.com" "google.com" "msn.com" "yahoo.com" cscript //nologo urls.vbs "bing.com" "google.com" "msn.com" "yahoo.com"


Si, por algún motivo, desea ejecutar estos con "wscript" en su lugar, recuerde utilizar "start / w" para que los códigos de salida (% errorlevel%) se devuelvan a su secuencia de comandos por lotes:

start /w "" wscript //nologo urls.js "url1" "url2" ... start /w "" wscript //nologo urls.vbs "url1" "url2" ... Edición: 21-Sep-2016

Ha habido un comentario de que mi solución es demasiado complicada. Estoy en desacuerdo. Usted elige la solución JavaScript , o la solución VB Script (no ambas), y cada una tiene solo unas 10 líneas de código real (menos si elimina la comprobación / informe de errores), más algunas líneas para inicializar constantes y variables.

Una vez que haya decidido (JS o VB), usted escribe ese script una vez , y luego llama al script desde un batch , pasando las URLs , cada vez que quiera usarlo, como:

cscript //nologo urls.vbs "bing.com" "google.com" "msn.com" "yahoo.com"

La razón por la que escribí esta respuesta es porque todas las demás respuestas, que funcionan para algunas personas, no funcionarán para otros, según:

  1. La configuración actual de Internet Explorer para "abrir ventanas emergentes en una pestaña nueva", "abrir en ventana / pestaña actual / nueva", etc. ... Suponiendo que ya tenga esa configuración establecida como le gusta para la exploración general, la mayoría de las personas la encontrarían No es deseable cambiar esas configuraciones hacia adelante y hacia atrás para que el script funcione.
  2. Su comportamiento es (puede ser) inconsistente dependiendo de si ya había una ventana de IE abierta antes de que se abrieran los "nuevos" enlaces. Si ya había una ventana de IE (tal vez con muchas pestañas abiertas) abierta, entonces todas las pestañas nuevas se agregarían allí también. Esto podría no ser deseado.

La solución que proporcioné no tiene estos problemas y debería comportarse de la misma manera, independientemente de la configuración de IE o de cualquier IE de Windows existente. (Por favor, avíseme si me equivoco al respecto y trataré de abordarlo).