Événement RequestComplete
[Microsoft Agent est déconseillé à partir de Windows 7 et peut être indisponible dans les versions ultérieures de Windows.]
-
Description
-
Se produit lorsque le serveur termine une requête mise en file d'attente.
-
Syntaxe
-
Sub agent**_RequestComplete** (ByVal Request**)**
Élément Description Requête Renvoie l'objet Requête.
Notes
Cet événement renvoie un objet Requête. Les requêtes étant traitées de manière asynchrone, vous pouvez utiliser cet événement pour déterminer le moment où le serveur termine le traitement d'une requête (telle qu'une méthode Get, Play ou Speak) afin de synchroniser cet événement avec d'autres actions générées par votre application. Le serveur n'envoie l'événement qu'au client qui a créé la référence à l'objet Request et uniquement si vous avez défini une variable globale pour la référence de la requête :
Dim MyRequest
Dim Genie
Sub window_Onload
Agent1.Characters.Load "Genie","https://agent.microsoft.com/characters/v2/genie/genie.acf"
Set Genie = Agent.Characters("Genie")
' This syntax will generate RequestStart and RequestComplete events.
Set MyRequest = Genie.Get("state", "Showing")
' This syntax will not generate RequestStart and RequestComplete events.
Genie.Get "state", "Hiding"
End Sub
Sub Agent1_RequestComplete(ByVal Request)
If Request = MyRequest Then
Status = "Showing animation is now loaded"
End Sub
Étant donné que les objets d'animation Request ne sont pas attribués tant que le serveur ne traite pas la requête, assurez-vous que l'objet Request existe avant de tenter de l'évaluer. Par exemple, en Visual Basic, si vous utilisez une condition pour tester si une requête spécifique a été complétée, vous pouvez utiliser le mot-clé Nothing :
Sub Agent1_RequestComplete (ByVal Request)
If Not (MyRequest Is Nothing) Then
If Request = MyRequest Then
'-- Do whatever
End If
End If
End Sub
Remarque
Dans VBScript 1.0, cet événement se déclenche même si vous ne définissez pas de références à un objet Request. Ce problème a été corrigé dans VBScript 2.0.
Voir aussi