Microsoft Agent


Microsoft® Agent is a set of programmable software services that supports the presentation of interactive animated characters within the Microsoft Windows® interface. Developers can use characters as interactive assistants to introduce, guide, entertain, or otherwise enhance their Web pages or applications in addition to the conventional use of windows, menus, and controls.

Microsoft Agent enables software developers and Web authors to incorporate a new form of user interaction, known as conversational interfaces, that leverages natural aspects of human social communication. In addition to mouse and keyboard input, Microsoft Agent includes optional support for speech recognition so applications can respond to voice commands. Characters can respond using synthesized speech, recorded audio, or text in a cartoon word balloon.

The conversational interface approach facilitated by the Microsoft Agent services does not replace conventional graphical user interface (GUI) design. Instead, character interaction can be easily blended with the conventional interface components such as windows, menus, and controls to extend and enhance your application's interface.

Microsoft Agent's programming interfaces make it easy to animate a character to respond to user input. Animated characters appear in their own window, providing maximum flexibility for where they can be displayed on the screen. Microsoft Agent includes an ActiveX® control that makes its services accessible to programming languages that support ActiveX, including Web scripting languages such as Visual Basic® Scripting Edition (VBScript). This means that character interaction can be programmed even from HTML pages using the <OBJECT> tag.

Downloads (Windows 95/98/NT)
exe-files are self extracting cabinet-files

Charcter (ACS)-Tool  
MASH45 (view ACS-Files, make VBA/VBS/HTML-Code & more...
MASH45 benötigt VBRUN600, falls nicht vorhanden (erst Mash45 so probieren), muß man es nachinstallieren. vbrun60.exe
Core Components (Win98/2000 included)  
Microsoft Agent core components (.exe file, 395K) msagent.exe
German Language support DLL for MsAgent (.exe file, 129K) agtx0407.exe
Character Files  
Genie (.exe file, 1.6M) genie.exe
Merlin (.exe file, 1.8M) Zauberer merlin.exe
Robbie (.exe file, 2.2M) robby.exe
Peedy (.exe file, 3.3M) peedy.exe
Oscar oscar.exe
Milton milton.exe
Joe joe.exe
Electra electra.exe
Plany (Flieger) plany.exe
Office 2000 (copy ACS to char-directory) CLIPPIT.ACS
Office 2000 (copy ACS to char-directory) DOT.ACS
Office 2000 (copy ACS to char-directory) F1.ACS
Office 2000 (copy ACS to char-directory) GENIUS.ACS
Office 2000 (copy ACS to char-directory) LOGO.ACS
Office 2000 (copy ACS to char-directory) MNATURE.ACS
Office 2000 (copy ACS to char-directory) OFFCAT.ACS
Office 2000 (copy ACS to char-directory) ROCKY.ACS
Text-to-speech engines  
Lernout & Hauspie TruVoice Text-To-Speach-Engine English (.exe file, 1M) tv_enua.exe
Speech recognition engines  
Microsoft® Speech Recognition Engine (.exe file, 6 MB). actcnc.exe
Speech control panel  
Speech Control Panel (.exe file, 935KB). spchcpl.exe


Tip 1: Die msagent-Dateien (Core-Komponenten und Character-Files) können permanent auf dem Computer installiert werden oder bei Bedarf über das Internet geladen werden.

Permanente Installation (Win95/98, bei WINNT/2000 heißen die Pfade C:\WINNT\....)

Installation über Internet (Active-X):

Im HTML-Code muß in <body> folgender Code eingefügt werden (auf server/path müssen die Dateien liegen!). Die Charcacter-Files müssen als einzelne Dateien (jede Animation *.aca) zum jeweiligen Character (*.acf) vorliegen. ACS-Dateien sind dagegen kompilierte Character-Files, in denen alle Animationen und die Beschreibung zusammengefaßt sind. 

/* Laden von Agent-Control und TruVoice */
<object ID="AgentControl" width="0" height="0" CLASSID="clsid:D45FD31B-5C6E-11D1-9EC1-00C04FD7081F" CODEBASE="http://server/path/msagent.exe#VERSION=2,0,0,0">
<object ID="TruVoice" width="0" height="0" CLASSID="clsid:B8F2846E-CE36-11D0-AC83-00C04FD97575" CODEBASE="http://server/path/tv_enua.exe#VERSION=6,0,0,0">

/* Chacter Script (JS/VBS) */

<script language="Javascript">
In this example the Microsoft Agent control is managed using JScript.
Alternatively, VBScript could be used.
var Peedy; // a global variable to hold the character object
Necessary initialization of the control and charcter are most
readily accomplished in a page's OnLoad procedure, which is
run automatically when the page is first loaded in a browser.
The character to be used must first be loaded into the control.
In this example the character is loaded from an HTTP URL, which
must point to a .ACF file, and an object reference to the newly
loaded character is saved in the global variable Merlin.
Once a character has been loaded from a .ACF
file, it is necessary to GET each animation before PLAYing it.
Here we GET all the animations that will be needed at once,
rather than waiting until just before they are played.
Newly loaded characters are initially hidden, so we show the
character as the last step in initializing the character. Since
all the requests to the Agent control are queued and executed
in request order, the appearance of the character will indicate
that the preceding requests succeeded. Note that this sample does
not include any code to handle request failures. A production
quality page should always include error handling.

The JScript function OnLoad, below, was defined to be equivalent
to VBScript's window_onLoad procedure in the BODY tag of this page.

function OnLoad() {
AgentControl.Connected = true; // necessary for IE3
AgentControl.Characters.Load("Peedy", "server/msagent//chars//peedy//peedy.acf");
// Note that JScript strings require 2 slashes for every single slash in a string
Peedy = AgentControl.Characters.Character("Peedy");
// Note that use of the Character method, which is optional in VBScript, is required in JScript
Peedy.LanguageID = 0x0409; // needed under come conditions
Peedy.Get("state", "Showing, Speaking");
Peedy.Get("animation", "Greet, GreetReturn");
Peedy.Get("state", "Hiding");

Tip 2: Office 97/2000 verwenden msagent-Technik, die Character-Files (*.ACS) befinden sich im Office-Programmverzeichnis,  um sie allgemein nutzen zu können, muß man sie in das msagent-chars-Verzeichnis kopieren.

Tip 3: Das lästige Programmieren! MASH ist ein Werkzeug, das nicht nur alle Animationen einer ACS-Datei (auch Office 2000!) anzeigen kann, es generiert auch Code verschiedener Formate nach Wunsch!

More information

Msagent Webring: 

Programming & Infos:

Docomentation on this site:

Programming for Microsoft Agent

Animation Lists