2017-06-02 2 views
0

Um zu überprüfen, die Kompatibilität einer App mit bestimmten Browsern zu öffnen, ich habe eine Batch-Datei einen URL zu öffnen IEBatch-Datei eine App im IE Browser

@echo OFF 
IF EXIST "C:\Program Files (x86)\Internet Explorer\iexplore.exe" (GOTO :X86SUCCESS) ELSE GOTO :NOTSUCCESS 
:X86SUCCESS 
start "C:\Program Files (x86)\Internet Explorer\Iexplore.exe" "http://blah.com/blah" 
goto END 
:NOTSUCCESS 
IF EXIST "C:\Program Files\Internet Explorer\iexplore.exe" (GOTO :X64SUCCESS) ELSE GOTO :NOTSUCCESS1 
:X64SUCCESS 
start "C:\Program Files\Internet Explorer\Iexplore.exe" "http://blah.com/blah" 
goto END 
:NOTSUCCESS1 
:END 

Dies sollte in der Regel die URL im Internet Explorer öffnen Browser, da wir die URL direkt mit iexplore öffnen, aber auf einigen Rechnern öffnet dies andere Browser wie Chrome, von denen ich nicht weiß, warum, ich vermute, dass es mit der Standard-Browsereinstellung zu tun hat, aber seit wir geöffnet haben IE sollte es nicht geben, kann jemand erklären, warum dieses Verhalten? und wie kann ich eine URL im IE immer öffnen, auch wenn der Standard-Browser nicht IE ist?

Antwort

0

Der Befehl start interpretiert den ersten Parameter als Titel, der in der Titelleiste des Fensters angezeigt wird. Der Pfad zum Internet Explorer wird als Titel festgelegt und der URI wird ausgeführt. Daher wird stattdessen der Standardbrowser gestartet.

Sie können dies verhindern, indem Sie einen leeren Titelzeichenfolge angeben:

setlocal 
set "progFiles=%programfiles(x86)%" 

if not defined progFiles (
    set "progFiles=%programfiles%" 
) 

start "" "%progFiles%\internet explorer\iexplore.exe" "http://blah.com/blah" 

Alternativ können Sie auch den Internet Explorer wie folgt beginnen:

start iexplore "http://blah.com/blah" 
+1

richtig gesagt, 'Starten' die erste interpretiert ** zitierter ** Parameter als Fenstertitel; so ist es: 'start '" iexplore "..." ' – aschipfl

+0

Es scheint, dass' start' den ersten in Anführungszeichen gesetzten Parameter als Fenstertitel interpretiert, ** wenn ** auch der auszuführende Befehl oder das Programm zitiert wird. Da "iexplore" nicht in Anführungszeichen steht, wird die folgende Zeichenfolge in Anführungszeichen als erster Parameter behandelt. – treintje

Verwandte Themen