HTML Application

HTML Application (HTA)
Filename extension .hta
Magic number %hta
Developed by Microsoft

An HTML Application (HTA) is a Microsoft Windows program whose source code consists of HTML, Dynamic HTML, and one or more scripting languages supported by Internet Explorer, such as VBScript or JScript. The HTML is used to generate the user interface, and the scripting language is used for the program logic. An HTA executes without the constraints of the internet browser security model; in fact, it executes as a "fully trusted" application.

The usual file extension of an HTA is .hta.

The ability to execute HTAs was introduced to Microsoft Windows in 1999, along with the release of Microsoft Internet Explorer 5. [1]



HTAs give the developer the features of HTML together with the advantages of scripting languages. They are popular with Microsoft system administrators who use them for system administration tasks, such as user-forms and pre-written network queries, since, for example, VBScript and JScript can access the Windows Task Manager. In general, HTA's are said to be suitable for many purposes, from prototypes to "full-scale" applications, especially where flexibility and speed of development are critical.[2]



An HTA is executed using the program mshta.exe, or, alternatively, double-clicking on the file. This program is typically installed when Internet Explorer is installed. mshta.exe executes the HTA by instantiating the Internet Explorer rendering engine (mshtml) as well as any required language engines (such as vbscript.dll).

An HTA is treated like any executable file with extension .exe. When executed via mshta.exe (or the file icon is double-clicked), it runs immediately. When executed via the browser, the user is asked once, before the HTA is downloaded, whether or not to save or run the application; if saved, it can simply be run on demand after that.[3]

Security considerations

When a regular HTML file is executed, the execution is confined to the security model of the web browser, that is, it is confined to communicating with the server, manipulating the page's object model (usually to validate forms and/or create interesting visual effects) and reading or writing cookies.

On the other hand, an HTA runs as a fully trusted application and therefore has more privileges than a normal HTML file; for example, an HTA can create, edit and remove files and registry entries. Although HTAs run in this 'trusted' environment, querying Active Directory can be subject to Internet Explorer Zone logic and associated error messages.


To customize the appearance of an HTA, a new (optional) tag hta:application was introduced to the HEAD section. This tag exposes a set of attributes that enable control of border style, the program icon, etc., and provide information such as the argument (commandline) used to launch the HTA. [4]

Otherwise, an HTA has the same format as an HTML page.

Development Tools

Any text editor can be used to create an HTA. Editors with special features for developing HTML applications may be obtained from Microsoft [5] or from third-party sources.[6]

An existing HTML file (with file extension .htm or .html, for example) can be changed to an HTA by simply changing the extension to .hta.


This is an example of Hello World as an HTML Application.

<TITLE>HTA - Hello World</TITLE>
<H2>HTA - Hello World</H2>

See also


  1. ^ Article ID:200874 in Microsoft Support, in Microsoft Support Knowledge Base
  2. ^ Introduction to HTML Applications (HTAs), in MSDN Library
  3. ^ Why Use HTAs, in MSDN Library, Introduction to HTML Applications
  4. ^ HTA:APPLICATION Object, in MSDN Library, the complete specification of the tag hta:application
  5. ^ HTA Helpomatic
  6. ^ HTAEdit, an editor for HTAs with a built-in debugger

External links

Wikimedia Foundation. 2010.

Look at other dictionaries:

  • HTML — For the use of HTML on Wikipedia, see Help:HTML in wikitext. HTML (HyperText Markup Language) Filename extension .html, .htm Internet media type text/html Type code TEXT …   Wikipedia

  • Application binary interface — In computer software, an application binary interface (ABI) describes the low level interface between an application program and the operating system, or the interface between an application and its libraries, or that between component parts of… …   Wikipedia

  • Application layer firewall — In computer networking, an application layer firewall is a firewall operating at the application layer of a protocol stack. [ [ layer firewall.html Application Layer Firewall | Web Glossary | F5 Networks ] ]… …   Wikipedia

  • Application security — encompasses measures taken throughout the life cycle to prevent exceptions in the security policy of an application or the underlying system (vulnerabilities) through flaws in the design, development, deployment, upgradation,or maintenance of the …   Wikipedia

  • Application Enhancer — (APE) is a software program released by Unsanity for Apple s Mac OS X operating system. Application Enhancer provides a framework that allows third party developers to write haxies for OS X. It also provides a daemon to load haxies when certain… …   Wikipedia

  • Application lifecycle management — (ALM) regards the process of delivering software as a continuously repeating cycle of inter related steps: definition, design, development, testing, deployment and management. Each of these steps needs to be carefully monitored and controlled.… …   Wikipedia

  • Application Object Model — (AOM) for Mozilla is an application programming interface for manipulating the application using JavaScript. It is similar to Document Object Model, but instead of being document centric, it is application centric. For example, opening web… …   Wikipedia

  • HTML scripting — HTML Series The W3C HTML standard includes support for client side scripting.It defines how locally executable scripts may be used in a web page.A particular client side application, such as a web browser, may support several script… …   Wikipedia

  • Application Response Measurement — (ARM) is an open standard published by the Open Group for monitoring and diagnosing performance bottlenecks within complex enterprise applications that use loosely coupled designs or service oriented architectures.It includes an API for C and… …   Wikipedia

  • Application Control Management System — (ACMS) is a transaction processing monitor software system for computers running the OpenVMS operating system. External links * [ ACMS Index at HP] …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”

We are using cookies for the best presentation of our site. Continuing to use this site, you agree with this.