Problembeschreibung

Für einen Kunden habe ich eine Intranet-Seite erstellt, über die er diverse Webfunktionen aber auch webrelevante Inhouse-Programme starten kann - quasi eine grafisch gestaltete gut strukturierte Weboberfläche. Diese Intranet-Plattform wurde für den Internet-Explorer optimiert. Der Grund sind nicht irgenwelche Darstellungsanforderungen sondern einfach die Tatsache, dass der Internet-Explorer releativ relaxed mit dem Aufruf lokaler Programme umgeht, etwas was unter z.B. dem FireFox aus Sicherheitsansprüchen nicht erlaubt ist.

Bisher funktionierte das so ganz hervorragend, bis zu dem Tag, wo Google der Meinung war, dass seine Analytics und Adword-Administrationsweboberfläche keine Unterstützung für den Internet-Explorer mehr anbietet. D.h. einen Linkaufruf im IE zur Google-Administration quittiert Google mit dem Hinweis doch einen kompatiblen d.h. Chrome oder FireFox zu benutzen. Nun stand ich vor dem Problem, dass dieser Link so für den Kunden nicht mehr nutzbar war. Daraus resultierte die Aufgabenstellung für eine Workaround.



 

Keine Lösung für Browsersprung-Verlinkung?

Nun habe ich unendlich lange gegoogled, um eine Lösung zu finden, konkret einen bestimmten Link aus dem Internet-Explorer heraus mit FireFox zu öffnen. Das klang ansich schon abenteuerlich und war es dann auch. In sämtlichen Foren wurden die Frager dazu aufgefordert Ihre Programmierungen browserkompatibel zu machen statt eine Browersprung-Verlinkung zu erzwingen. Wenn es um Kompatibilitäten geht, sehe ich das als Webdesign-Profi genauso, aber die Praxis und Kunden sind unerbittlich und wie im o.g. Beispiel zu erfahren Google auch. Es musste also eine Lösung her. Mit Forenaussagen wie "eine solche Verlinkung wird es nie geben, denn wie kommst Du dazu mir vorzuschreiben, mit welchem Programm/Browser ich Internetseiten aufrufe" wollte ich mich nicht abfinden.

 

Und es gibt doch eine Lösung!

Wie immer ist die Lösung dann doch recht einfach, vorausgesetzt ein Browser unterstützt dieses Vorhaben. Genau hier spielte sich dann wieder einmal eine Stärke des IE aus, die damals ja schon dazu führte, statt meines favorisierten FF den IE als Intranet-Browser zu verwenden.

Ich erstellte zunächst ein kleines JavaScript, welches in die Seite eingebunden wird

<script type="text/javascript">
function FFopenURL (URL) {
    var shell = new ActiveXObject("WScript.shell");
    shell.run("firefox.exe "+URL);
}
</script>

Diese hier definierte Funktion kann ich dann in jedem Link verwenden für den ich eine Seiten zwingend mit dem FireFox öffnen lassen will. Der Funktion übergeben ich lediglich den Ziel-URL:

<a href="/" onClick="FFopenURL('https://www.1d5920f4b44b27a802bd77c4f0536f5a-gdprlock/accounts/ManageAccount'); return false;" target="FktWnd" title="Google-Account">
        <img src="/../Nav-Icons/Google_Login.png" />Goolge Adword-Konto</a>

 

Hinweise:

  • Oben getroffene Aussagen zu den Browserfunktionen und -einschränkungen beziehen sich auf die Versionen des IE 8 bis 10 und FireFox 23. Sicher wird eine Umsetzung adäquat mit Chrome, Safari oder Opera als Zielbrowser funktionieren - aber eben immer aus dem IE heraus, den diese ActiveX-Funktion geht eben nur im IE. Diese Varianten habe ich nicht durchgetestet. Vielleicht versucht es jemand anderes und postet hier seine Erfahrungen.
  • Selbstverständlich ist Voraussetzung, dass der FF auch auf dem lokalen System installiert ist. Wie im obigen Beispiel zu sehen, kann der FireFox ganz ohne Zielpfadangabe aufgerufen werden. Getestet habe ich die Nutzbarkeit auch im lokalen Netz, was ja für eine Intranet unumgänglich ist - es funktioniert.