Поделиться через


Событие RequestComplete

[Microsoft Agent не рекомендуется использовать в Windows 7 и может быть недоступно в последующих версиях Windows.]

Description

Происходит, когда сервер завершает запрос в очереди.

Синтаксис

Подагент**_RequestComplete** (ByVal Request**)**

Часть Description
Запросить Возвращает объект Request.

 

Замечания

Это событие возвращает объект Request. Так как запросы обрабатываются асинхронно, это событие можно использовать для определения завершения обработки запроса сервера (например, метода Get, Play или Speak), чтобы синхронизировать это событие с другими действиями, созданными приложением. Сервер отправляет событие только клиенту, создавшего ссылку на объект Request , и только если вы определили глобальную переменную для ссылки на запрос:

   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

Так как объекты запроса анимации не назначаются, пока сервер не обрабатывает запрос, убедитесь, что объект Request существует, прежде чем пытаться оценить его. Например, в Visual Basic, если вы используете условное условие для проверки того, был ли выполнен конкретный запрос, можно использовать ключевое слово Nothing :

   Sub Agent1_RequestComplete (ByVal Request)

   If Not (MyRequest Is Nothing) Then
      If Request = MyRequest Then
      '-- Do whatever
      End If
   End If

   End Sub

Примечание.

В VBScript 1.0 это событие запускается, даже если вы не определяете ссылки на объект Request. Это исправлено в VBScript 2.0.

 

См. также

Событие RequestStart