0251 / 590 644 - 0
info@a-coding-project.de

HTA:APPLICATION

Eine HTA-Anwendung ist, wie eingangs schon gesagt im Prinzip nur ein normales HTML-Dokument mit der Dateiendung .hta. Um nun die gewissen Merkmale eines Programms/einer Anwendung einstellen zu können führte Microsoft ein neues Element ein, welches nur für diese Verwendung gedacht ist: HTA:APPLICATION.
Eine HTA-Anwendung kann auch ohne dieses Element ohne Probleme laufen, allerdings vervollkomnet es die Anwendung und stellt gewisse Merkmale einer Anwendung ein.

Notation

Das hta:application-Element wird wie jedes andere Element auch notiert. Es sollte möglichst in den head-Bereich gebracht werden und enthält keinen Inhalt kann also nach HTML bzw. XHTML einem Tag bestehen. Beispiel:

<html>
<head>
 <hta:application ... >
 <title> ... </title>
 ...
</head>
<body>
 ... Inhalt ...
</body>
</html>

<!-- in XHTML-Dateien: -->
<html>
<head>
 <hta:application ... />
 <title> ... </title>
 ...
</head>
<body>
 ... Inhalt ...
</body>
</html>

Attribute

Das hta:application-Element kann die folgenden Attribute beinhalten:

applicationname

Enthält den Namen der Anwendung (nicht verwechseln mit dem title) der frei gewählt werden kann. Es dürfen keine Sonder- und Leerzeichen verwendet werden und sollte eindeutig sein. Der Wert wird u.a. zur Verwendung von singleinstance="yes" verwendet. Script-Name: applicationName.

border

Beschreibt die Rahmenbreite. Folgende Werte sind möglich: dialog (Rahmen wie eine Dialogbox), none (kein Rahmen), thick (dicker Rahmen), thin (dünner Rahmen). Script-Name: border. Beispielgrafik:

border-Werte im Vergleich
Darstellung: border-Werte im Vergleich

borderStyle

Beschreibt den Rahmenstil der Rahmen der Anwendung. Folgende Werte sind möglich: complex (erhöht und vertieft), normal (normaler Stil), raised (erhöht), static (statisch), sunken (vertieft). Script-Name: borderStyle.

borderStyle-Werte im Vergleich
Darstellung: borderStyle-Werte im Vergleich

caption

Beschreibt, ob die Titelleiste angezeigt werden soll (yes) oder nicht (no). Script-Name: caption.

commandLine

Enthält die Zeichenkette (Komandozeile) mit der die Anwendung gestartet wurde. Aus ihre können beispielsweise der Programmpfad oder eventuelle Parameter ausgelesen werden. Dieses Attribut kann nur im Skript abgefragt, nicht aber im hta:application-Element gesetzt werden. Script-Name: commandLine.

contextMenu

Beschreibt, ob das Kontextmenü erscheinen soll (yes) wenn man mit der rechten Maustaste in die Anwendung klickt, oder nicht (no). Script-Name: contextMenu.

icon

Enthält den Pfad (URL) eines Icons, dass als Programmicon angezeigt werden soll. Script-Name: icon.

innerBorder

Beschreibt, ob der innere Rahmen angezeigt werden soll (yes) oder nicht (no). Script-Name: innerBorder.

maximizeButton

Beschreibt, ob ein Maximier-Button (Button zum vollständigen Vergrößern der Anwendung) in der Titelleiste angezeigt werden soll (yes) oder nicht (no). Script-Name: maximizeButton.

minimizeButton

Beschreibt, ob ein Minimier-Button (Button zum vollständigen Verkleinern der Anwendung) in der Titelleiste angezeigt werden soll (yes) oder nicht (no). Script-Name: minimizeButton.

navigable

Beschreibt, ob Dokumente, die per Klick auf einen Link geöffnet werden, im Anwendungsfenster angezeigt werden sollen (yes) oder ob dazu ein neues Browser-Fenster geöffnet werden soll (no). Script-Name: navigable.

scroll

Beschreibt, ob Bildlaufleisten angezeigt werden sollen (yes) oder nicht (no), oder ob automatisch (auto) entschieden werden soll (je nach dem wie breit oder hoch der Inhalt ist). Script-Name: scroll.

scrollFlat

Beschreibt, ob die Bildlaufleisten flach angezeigt werden sollen (yes) oder im normalen 3D-Stil (no). Script-Name: scrollFlat.

selection

Beschreibt, ob Inhalt des Fensters mit der Maus oder der Tastatur markiert werden können (yes) oder nicht (no). Script-Name: selection.

showInTaskBar

Beschreibt, ob die Anwendung im der Task-Leiste erscheinen soll (yes) oder nicht (no). Script-Name: showInTaskBar.

singleInstance

Beschreibt, ob die Anwendung mehrmals (no) oder nur einmal gestartet werden kann (yes). Script-Name: singleInstance.

sysMenu

Beschreibt, ob die System-Buttons (Minimieren, Maximieren, Schließen) in der Titelleiste angezeigt werden sollen (yes) oder nicht (no). Script-Name: sysMenu.

version

Enthält einen beliebigen Inhalt (meist eine Zahl bzw. Zahlenkombination) der die Version der Anwendung angibt. Script-Name: version.

windowState

Beschreibt, mit welcher Größe die Anwendung gestartet werden soll. Folgende Werte sind möglich: maximize (maximiert), minimize (minimiert) und normal (normale Größe). Script-Name: windowState.

Beispiel

Die oben genannten Attribute hier als Beispiel:

<html>
<head>
 <hta:application 
 id="htaapp"
 applicationname="MeineAnwendung"
 border="thin"
 borderstyle="static"
 caption="yes"
 contextmenu="yes"
 icon="C:/Name/abc.ico"
 innerborder="no"
 maximizebutton="no"
 minimizebutton="no"
 navigable="yes"
 scroll="auto"
 scrollflat="yes"
 selection="yes"
 showintaskbar="no"
 singleinstance="yes"
 sysmenu="yes"
 version="2.3"
 windowstate="normal"
 >
 <title> Meine Anwendung </title>
 <script>
 <!--
 if(document.all.htaapp.commandLine.search(' -s') != -1)
 {document.location.href = 'special.htm';}

 if(document.all.htaapp.commandLine.search(' -g') != -1)
 {document.location.href = 'game.htm';}
 //-->
 </script>
</head>
<body>
 <p>Bitte wählen Sie eine der zwei Möglichkeiten:</p>
 <p>
 <a href="special.htm">Spezial</a> -
 <a href="game.htm">Spiel</a>
 </p>
</body>
</html>

Erklärung: Die Anwendung wird mit den gegebenen Attributen gestartet und ausgeführt. Dabei werden beim Laden zwei kurze Abfragen (Zeile 1 und 2) durchlaufen. Sie untersuchen, ob die Komandozeile ' -s' oder ' -g' enthält und lädt entsprechend ein anderes Dokument in das Anzeigefenster.

Diese Abfrage überprüft somit, ob die Anwendung mit den Parametern ' -s' bzw. ' -g' gestartet wurde.