AGENT MICROSOFT DANS UNE PAGE HTML (METHODE <OBJECT>)

cs_hakim0 Messages postés 123 Date d'inscription mercredi 27 août 2003 Statut Membre Dernière intervention 12 août 2008 - 1 déc. 2004 à 11:56
ifebo Messages postés 181 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 28 décembre 2006 - 27 nov. 2005 à 08:45
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/27610-agent-microsoft-dans-une-page-html-methode-object

ifebo Messages postés 181 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 28 décembre 2006
27 nov. 2005 à 08:45
Bonjour, je ne sais si je suis à côté de la plaque, mais plutôt que d'aller fouiller dans la base de registre, il est plus simple, je crois, d'aller à :C:\WINDOWS\msagent\chars et là, clic droit sur un objet.acs et propriétés. On trouve alors deux clefs à l'onglet version :
GUID : {************ }
TTS Mode ID :{************ }
(A cet instant, j'ignore comment utiliser ces clefs)
Mais comme je ne m'y connais pas trop, ce n'est peut-être pas la réponse à la question. Pouvez vous me le confirmer pour m'éclairer un peu ?
Personnellement, j'utilise un VBScript qui appel directement le fichier .acs Merlin.acs par exemple et ensuite toute la programmation se fait sans jamais répéter le nom de Merlin. Si bien que l'on a l'avantage si on veut changer de personnage de n'avoir en tout et pour tout que deux fois le nom de merlin à remplacer par un autre. Il faut juste s'assurer que les fonctions de l'un sont également utilisées par l'autre.
VOICI UN EXEMPLE : Copier/coller la page html ci-dessous.
<HTML>
<HEAD>
<TITLE>MSAGENT</TITLE>

<SCRIPT LANGUAGE= "VBScript">
//MSAGENT

Dim C
Dim URLReq
Dim ShowAnimReq
Sub Window_OnLoad()
LoadCharacter
End Sub
Sub LoadCharacter()
Dim Req
On Error Resume Next

Set Req = Agent.Characters.Load ("Char", "Merlin.acs")
If Req.Status <> 0 Then
Set URLReq = Agent.Characters.Load("Char", "C:\WINDOWS\msagents\Merlin.acs")
// URL Microsoft pour installer l'agent sur Internet : http://agent.microsoft.com/agent2/chars/merlin/merlin.acf
Else
Set C = Agent.Characters("Char")
Start
End If
End Sub
Sub Agent_RequestComplete(ByVal Request)
Dim Req

If Request = URLReq Then
If Request.Status = 1 Then
'Something to do if the URl load failed.. Busy server
Exit Sub
ElseIf Request.Status = 0 Then
Set C = Agent.Characters("Char")
Set ShowAnimReq = C.Get("state", "showing, speaking, hiding")
C.Get "animation", "Blink", False
End If
ElseIf Request = ShowAnimReq Then
If Request.Status = 1 Then
'Request to load the Show animation failed. The server may be busy.
Exit Sub
ElseIf Request.Status = 0 Then
Start
End If
End If
End Sub
Sub Start()


C.Show
C.MoveTo 444,180
C.Play "Pleased"
C.speak "Bonjour."
C.speak "Je peux m'exprimer à voix haute."
C.think "Je peux aussi faire des aparthés."
C.speak "\chr=""whisper""\Je peux me montrer discret en chuchotant."
C.Speak "\pit=400\\spd=250\Je peux également parler à toute vitesse !"
C.Speak "\pit=50\\spd=50\Ou même au ralenti !"
C.Speak "Et faire des pauses, allant de une à dix secondes."
C.Speak "\pau=10000"
C.Play "Explain"
C.speak "Au revoir !"
C.Play "Wave"
C.Hide

End Sub

</SCRIPT>


<!-- Start VB Script -->
<OBJECT ID="Agent" width=0 height=0 CLASSID="CLSID:D45FD31B-5C6E-11D1-9EC1-00C04FD7081F" CODEBASE="#VERSION=2,0,0,0"></OBJECT>

</HEAD>








TEST MSAGENT


C.Show
C.MoveTo 300,300 //left/top ou x/y
C.Play "Pleased"
C.speak "Bonjour."
C.speak "Je peux m'exprimer à voix haute."
C.think "Je peux aussi faire des aparthés."
C.speak "\chr =""whisper""\Je peux me montrer discret en chuchotant."
C.Speak "\pit= 400\\spd=250\Je peux également parler à toute vitesse !"
C.Speak "\pit=50\\spd=50\Ou même au ralenti !" //pit=de 50 à 400 spd=de 50 à 250
C.Speak "Et faire des pauses, allant de une à dix secondes."
C.Speak "\pau =10000" //Temps en milisecondes
C.Play "Explain"
C.speak "Au revoir !"
C.Play "Wave"
C.Hide





</HTML>

Voilà en espérant avoir rendu service à qq.
cs_MasterHack Messages postés 586 Date d'inscription jeudi 18 septembre 2003 Statut Membre Dernière intervention 13 février 2008 2
2 juin 2005 à 20:03
utlises la fonction Merlin.moveto
cs_Songeur Messages postés 3 Date d'inscription samedi 24 avril 2004 Statut Membre Dernière intervention 20 novembre 2007
2 juin 2005 à 18:38
Bonjour, et merci pour cette source
je tourne en rond a essayer de faire déplacer à un endroit voulu l'Agent....
mais rien a faire...
quelqu'un aurait l'astuce ?

Merci d'avance
cs_MasterHack Messages postés 586 Date d'inscription jeudi 18 septembre 2003 Statut Membre Dernière intervention 13 février 2008 2
3 déc. 2004 à 18:58
avec des Dllactivex oui mais pas avec des exeactivex
mais je vais essayer .Merci
Morricon Messages postés 41 Date d'inscription lundi 23 décembre 2002 Statut Membre Dernière intervention 1 mars 2007
3 déc. 2004 à 15:41
Vraiment génial !

Si ! Si ! J'ai essayé de faire des chose similaire en utilisant les exe document activeX et application DHTML de vb, et j'avoue ne pas avoir eu le même résultat.

Cependant, et si j'ai bien compris ta dernière remarque, il est possible d'intégrer un exe VB ? Et si faut'il lui donner une forme particulière : '(Exe normal ou exe activeX par exemple)

J'ai déjà fait des exe ActiveX qi se lance dans Ie, mais j'ai rencontré des problèmes de sécurité de la part d'IE. En fait il fonctionnait sur ma station, mais pas sur celle d'un collègue (Pas de signature qu'il disait !)

A tu essayé avec un prog VB d'origine ?

Note : 10/10
cs_MasterHack Messages postés 586 Date d'inscription jeudi 18 septembre 2003 Statut Membre Dernière intervention 13 février 2008 2
1 déc. 2004 à 21:51
oui les objets sont des activex comme pour le flash player qui s'integre dans la page html.
il suffit de changer le CLSID (Tu trouveras celui la dans la base de registre)
fais la recherche dans la base de registre sur celui de l'agent et tu trouveras les autres (Media player,Msflexgrid,Timer,listView etc) et les activex que tu px creer.
si non tu utilise le vbscript puis tu appel par la methode
createobject("Ici La Class")
Exp :
set a=createobject("Agent.Control.1")
pour le cas de l'agent
elle sont dans la class Root
Merci pour la question,si plus de detail ecrit moi.
cs_hakim0 Messages postés 123 Date d'inscription mercredi 27 août 2003 Statut Membre Dernière intervention 12 août 2008 1
1 déc. 2004 à 11:56
bonn prog
j ai une question
comment je pe aficher un object avec vb sur une page html... sur cette source tu aficher lobjet agent. on pe changer ce objet par un autre?? (qui est cree avec vb)
Rejoignez-nous