Announcement

Collapse
No announcement yet.

MS Agent

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • MS Agent

    Tachchen die Herrn, jaja, auch die Fraun...
    also, wie der Titel schon sagt hab ich fragen zum agenten.

    ich würd gern wissen, wie ich diesen agenten in meinem programm zum laufen bring - also, dass er funktioniert, nicht animiert.
    was muss ich bei 'uses' eintragen? wenn überhaupt.
    also ich würd dann gern den als standard eingestellten agenten laden.
    ich hab zwar bei der msdn geschaut, aber da sind, wenn überhaupt nur vbasic beispiele, die bringen mir aber nix. (im forum hab ich auch geschaut, da fand ich aber bisher auch nichts, was meinen wissensdurst befriedigt.)

    muss ich sonst noch was beachten, wenn ich den zum sprechen bringen will? also die tts-engine und das language-add-on hab ich schon, denk ich ;-).
    (von www.bellcraft.com/mash)
    kann man den agenten auch sprechen lassen ohne ihn anzuzeigen? (die eigenschaft heisst wohl 'hide' bei dem, oder?)

    über jede hilfe bin ich sehr dankbar.
    bis die tage,
    Stephan

  • #2
    Hallo Stephan,<br>
    der MS-Agent ist ein ActiveX. Daher besteht der erste Schritt das ActiveX zu importieren:<br>
    <br>
    <b>Microsoft Agent Control 2.0 (Version 2.0)</b><br>
    <br>
    Dieser Quelltext läßt den Agent erscheinen und einen Text vorlesen.<br>
    Dieser Text befindet sich in einer ASCII-Datei (greet.txt).<br>
    Nachdem der Text vorgelesen wurde verschwindet der Agent wieder und das <br>
    Programm wird beendet.<br>
    Ich habe die TTS von Learnout&Hauspie installiert. Daher kommt die GUID für die<br>
    Stimme. Andere TTS'n habe andere GUID's.<br>
    <pre>
    <font face="Verdana" size="1" color="#000000">unit Unit1;

    interface

    uses
    Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
    OleCtrls, AgentObjects_TLB, ExtCtrls;

    type
    TFormAgentGreeting = class(TForm)
    MSAgent: TMSAgent;
    Timer1: TTimer;
    procedure FormCreate(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure MSAgentHide(Sender: TObject; const CharacterID: WideString;
    Cause: Smallint);
    private
    { Private-Deklarationen }
    Merlin : IAgentCtlCharacterEx;
    FGreetText : String;
    public
    { Public-Deklarationen }
    end;

    var
    FormAgentGreeting: TFormAgentGreeting;

    implementation

    uses Utils1, Inifile2;

    {$R *.DFM}

    procedure TFormAgentGreeting.FormCreate(Sender: TObject);
    var
    aCharacterFile : String;
    Tmp : TStringList;
    begin
    Tmp:=TStringList.Create;
    Try
    Try
    Tmp.LoadFromFile(ApplicationPath+'Greet.txt');
    FGreetText:=Tmp.Text;
    Except
    FGreetText:='Hallo Jens';
    end;
    aCharacterFile:=WinDir+'\MSAgent\Chars\Merlin.acs' ;
    MSAgent.Characters.Load('Merlin',aCharacterFile);
    Merlin:=MSAgent.Characters.Item['Merlin'];
    Merlin.Set_LanguageID($0407); // Setze die SprachID
    Merlin.TTSModeID:='{3A1FB760-A92B-11d1-B17B-0020AFED142E}'; // GUID für Stimme
    Merlin.MoveTo(Screen.Width shr 1 -Merlin.Width shr 1,Screen.Height shr 1 - Merlin.Height shr 1,100);
    Merlin.Show(False);
    Timer1.Enabled:=True;
    Finally
    Tmp.Free;
    end;
    end;

    procedure TFormAgentGreeting.Timer1Timer(Sender: TObject);
    begin
    Timer1.Enabled:=False;
    Merlin.Play('Greet');
    Merlin.Speak('\pit=80\'+FGreetText,'');
    Merlin.Play('Restpose');
    Merlin.Hide(False);
    end;

    procedure TFormAgentGreeting.MSAgentHide(Sender: TObject; const CharacterID: WideString; Cause: Smallint);
    begin
    PostMessage(Handle,WM_Close,0,0);
    end;

    end.</font>
    </pre>
    Die Toolbox Ausgabe 01/2000 Januar/Februar enthält einen ausgezeichneten Artikel über den Agent.<br>
    Ich denke, dass dieser Artikel alle Deine Agent-Fragen beantworten wird.<br>
    Hier gibt's auch Info's ( auch die TTS für Deutsch)<br>
    http://www.microsoft.com/products/msagent/downloads.htm<br&gt

    Comment


    • #3
      super. ich danke vielmals.
      anfangs wußte ich zwar nicht was du mit 'importieren des agent control' meintest, hab mich aber durchgewurstelt.
      danke für die schnelle hilfe.

      na denn, bis zum nächsten problem.. ;-)

      Stepha

      Comment

      Working...
      X