IE Start erzwingen

Status
Nicht offen für weitere Antworten.
Vertigo84 hat gesagt.:
1.Cd einlegen
2. IE startet und zeigt die Start seite
3. User wählt was er will(ergo er will das programm installieren, öffnet dafür einen link)
4. Er klickt auf öfnnen (problem: er kann es auch speichern, soll er aber nicht...)
5. User glücklich (denke ich)

:)

Das ist doch schon was ganz anderes.
Schritt 2 kannst du mit 'iexplore www.tutorials.de' ausführen
4. ist nicht auf normalem Weg lösbar

Was mir allerdings ein Rätsel ist: Warum muss das mit dem IE aufgerufen werden?
 
Der IE...oder ein anderer Browser, sind für dein Vorhaben denkbar ungünstig, weil ein Browser nun mal ungerne *.exe'n startet... was auch gut ist :)

Wenn dein Vorhaben nur an Windows-User gerichtet ist, ist die Lösung aber dennoch recht einfach:)

Ändere die Endung deiner HTML-Datei um in *.hta .
Dadurch wird sie auf WIN-Systemen standardmässig mit MSHTA.exe geöffnet... das ist gewissermassen der IE ohne Sicherheitschranken... dort lassen sich Skripte ausführen, welche der IE aufgrund seiner Sicherheitseinstellungen verweigern würde...so z.B. das Starten von Programmen.


Auf deine CD packe als erstes eine AUTORUN.INF mit folgendem Inhalt:
Code:
[autorun]
shellexecute=index.hta
...den Dateinamen jenachdem anpassen.

Dadurch wird beim Einlegen der CD diese Datei geöffnet(mit MSHTA.exe)

Diese *.hta-Datei kann ganz normalen HTML-Code enthalten, dieser wird genauso interpretiert wie im IE.

Der Link zum Setup:
Zuerst füge Folgendes in die *.hta-Datei ein:
Code:
<script type="text/JScript">
<!--
oShell= new ActiveXObject('Wscript.Shell');
//-->
</script>
...damit wird ein ActiveX-Object erzeugt, welches dir erlaubt, beliebige Dateien tzu starten.

Der Link selbst:
Code:
<a href="#"onclick="oShell.run('pfad/zur/setup.exe');return false;">installieren</a>
..die setup.exe sollte jetzt starten.

MSHTA bietet noch weitere Möglichkeiten, z.B. in Sachen Fensterdesign.... du kannst bspw. ein Fenster im Vollbildmodus öffnen, ohne Titelleiste öffnen, ein eigenes Icon angeben usw.
 
Super jetzt gehts danke schön, und dieses HTA ist auf wirklich jedem Windows drauf?

hm in welcher programmiersprache ist denn dieses HTA?
bzw. wie kann ich da die Seite in den Vollbildmodus bekommen?
 
Hallo!

hm in welcher programmiersprache ist denn dieses HTA?
bzw. wie kann ich da die Seite in den Vollbildmodus bekommen?

Wie Sven Mintel bereits gesagt hat, ist HTA ("HTml Application") sozusagen eine erweiterung von HTML. Vollbildmodus lässt sich mit der Option windowState="maximize" erreichen.

Ein Beispiel für eine HTA-Datei (Vollbildmodus mit dem Code von Sven Mintel):

Code:
<html>
  <head>
  <hta:application windowState="maximize">
    <script type="text/JScript">
      <!--
      oShell= new ActiveXObject('Wscript.Shell');
      //-->
    </script>

  </head>
  <body>
    <a href="#"onclick="oShell.run('pfad/zur/setup.exe');return false;">installieren</a>
  </body>
</html>
 
MSHTA ist bei Windows mit IE5 oder höher dabei... damit standardmässig ab WIN98.

Die genannten "Features" werden in einem speziellen Tag im <head> des Dokuments notiert....wie bei Frankdfe bereits zu sehen:
Code:
<head>
<HTA:APPLICATION />
</head>

Die dort möglichen Attribute sind:
  • APPLICATIONNAME (beliebiger String)
    Name für das Fenster... wichtig in Zusammenhang mit "SINGLEINSTANCE"
  • BORDER(thick|thin|normal|dialog)
    Typ des Fensterrahmens
  • BORDERSTYLE(normal|complex|raised|static|sunken)
    Stil des Fensterrahmens
  • CAPTION(yes|no)
    Titelleiste anzeigen
  • CONTEXTMENU(yes|no)
    Kontextmenu anzeigen
  • ICON(Pfad zum Icon)
  • INNERBORDER(yes|no)
    inneren Rahmen anzeigen
  • MAXIMIZEBUTTON(yes|no)
    Maximieren-Button in Titelleiste anzeigen
  • MINIMIZEBUTTON(yes|no)
    Maximieren-Button in Titelleiste anzeigen
  • NAVIGABLE(yes|no)
    sollen Links im HTA-Fenster geöffnet werden?...wenn no, werden sie in einem Browserfenster geöffnet
  • SCROLL(yes|no|auto)
    Scrollbar anzeigen
  • SCROLLFLAT(yes|no)
    Scrollbars nicht im "3D-Style" anzeigen
  • SELECTION(yes|no)
    darf Text oder Sonstiges markiert werden
  • SHOWINTASKBAR(yes|no)
    in der Taskleiste zeigen
  • SINGLEINSTANCE(yes|no)
    wenn "yes", kann immer nur ein Fenster mit demselben Dokument geöffnet werden. Um das Dokument zu erkennen, muss das Attribut "APPLICATIONNAME" gesetzt sein.
  • SYSMENU(yes|no)
    "Sysmenu" bezeichnet das Menu mit Verschieben/Schliessen/Minimimieren usw., welches beim Rechtsklick auf die Titelleiste und die Taskbar erscheint.
    bei "no" erscheint dieses Menu nicht(auch das Icon wird dann in der Titelleiste nicht angezeigt)

  • WINDOWSTATE(normal|minimize|maximize)
    Fenstergrösse beim Öffnen


Das Bsp. von Frankdfe öffnet ein Fenster "maximiert"... um es tatsächlich im Vollbildmodus zu öffnen, notiere Folgendes:

Code:
<HTA:APPLICATION INNERBORDER="no" CAPTION="no" WINDOWSTATE="maximize" />
 
Super danke hab noch nie was von diesem hta gehört....hat mir aber gerade evtl. meine Zukunft gerettet :)
 
Guten Tag!

Ist es mir mit hta möglich eine Datei unbekannten Dateityps mit einer bestimmten Anwendung öffnen zu lassen, also z.B. eine .IVO mit dem Windows-Media-Player?
Habe leidung gar keine HTML Erfahrung.

Vielen Dank

axn
 
Das ist keine Frage von HTML oder HTA...das ist eine Sache für den WindowsScriptingHost.

Alles, was der kann, kannst du per Script in einer HTA-Datei ausführen lassen(in einer HTML-Datei theoretisch auch, praktisch verhindern dies jedoch die Sicherheitseinstellungen des IE).

Code:
<script type="text/jscript">
<!--
shell=new ActiveXObject('WScript.Shell');
shell.run('wmplayer "C:\pfad\zur\datei.ivo"');
//-->
</script>
 
Danke erstmal.

Kann ich diesen Code auch in einen Hyperlink einbinden? Bei mir geht es nicht um einen Autostart.
 
Status
Nicht offen für weitere Antworten.

Neue Beiträge

Zurück