Propriété connectée
[Microsoft Agent est déconseillé à partir de Windows 7 et peut être indisponible dans les versions ultérieures de Windows.]
-
Description
-
Cette propriété renvoie ou définit si le contrôle actuel est connecté au serveur Microsoft Agent.
-
Syntaxe
-
*agent.*Connecté [ = booléen]
Élément Description boolean Expression booléenne spécifiant si le contrôle est connecté. Vrai Le contrôle est connecté.
Notes
Dans de nombreuses situations, la spécification du contrôle crée automatiquement une connexion avec le serveur Microsoft Agent. Par exemple, la spécification du CLSID du contrôle Microsoft Agent dans la <balise OBJECT> d’une page web ouvre automatiquement une connexion serveur et la sortie de la page ferme la connexion. De même, pour Visual Basic ou d’autres langages qui vous permettent de supprimer un contrôle dans un formulaire, l’exécution du programme ouvre automatiquement une connexion et la sortie du programme ferme la connexion. Si le serveur n’est pas en cours d’exécution, il démarre automatiquement.
Toutefois, si vous souhaitez créer un contrôle Agent au moment de l’exécution, vous devrez peut-être également ouvrir explicitement une nouvelle connexion au serveur à l’aide de la propriété Connected . Par exemple, en Visual Basic, vous pouvez créer un objet ActiveX au moment de l’exécution à l’aide de l’instruction Set avec la fonction New mot clé (ou CreateObject). Bien que cela crée l’objet, il se peut qu’il ne crée pas la connexion au serveur. Vous pouvez utiliser la propriété Connected avant tout code qui appelle l’interface de programmation de Microsoft Agent, comme illustré dans l’exemple suivant :
' Declare a global variable for the control
Dim MyAgent as Agent
' Create an instance of the control using New
Set MyAgent = New Agent
' Open a connection to the server
MyAgent.Connected = True
' Load a character
MyAgent.Characters.Load "Genie", " Genie.acs"
' Display the character
MyAgent.Characters("Genie").Show
La création d’un contrôle à l’aide de cette technique n’expose pas les événements du contrôle Agent. Dans Visual Basic 5.0 (et versions ultérieures), vous pouvez accéder aux événements du contrôle en incluant le contrôle dans les références de votre projet et utiliser le mot clé WithEvents dans votre déclaration de variable :
Dim WithEvents MyAgent as Agent
' Create an instance of the control using New
Set MyAgent = New Agent
L’utilisation de WithEvents pour créer une instance du contrôle Agent au moment de l’exécution ouvre automatiquement la connexion avec le serveur Microsoft Agent. Par conséquent, vous n’avez pas besoin d’inclure une instruction Connected .
Vous pouvez fermer votre connexion au serveur en libérant toutes les références que vous avez créées aux objets Agent, tels que IAgentCtlCharacterEx et IAgentCtlCommandEx. Vous devez également libérer votre référence au contrôle Agent lui-même. En Visual Basic, vous pouvez libérer une référence à un objet en définissant sa variable sur Nothing. Si vous avez chargé des caractères, déchargez-les avant de libérer l’objet caractère.
Dim WithEvents MyAgent as Agent
Dim Genie as IAgentCtlCharacterEx
Sub Form_Load
' Create an instance of the control using New
Set MyAgent = New Agent
' Open a connection to the server
MyAgent.Connected = True
' Load the character into the Characters collection
MyAgent.Characters.Load "Genie", " Genie.acs"
' Create a reference to the character
Set Genie = MyAgent.Characters("Genie")
End Sub
Sub CloseConnection
' Unload the character
MyAgent.Characters.Unload "Genie"
' Release the reference to the character object
Set Genie = Nothing
' Release the reference to the Agent control
Set MyAgent = Nothing
End Sub
Notes
Vous ne pouvez pas fermer votre connexion au serveur en libérant les références où le composant a été ajouté. Par exemple, vous ne pouvez pas fermer votre connexion au serveur sur les pages web où vous utilisez la <balise OBJECT> pour déclarer le contrôle ou dans une application Visual Basic où vous supprimez le contrôle sur un formulaire. Bien que la publication de toutes les références d’agent réduise l’ensemble de travail de l’agent, la connexion reste jusqu’à ce que vous accédiez à la page suivante ou quittez l’application.