Método Load
[O Microsoft Agent foi preterido a partir do Windows 7 e pode estar indisponível nas versões subsequentes do Windows.]
-
Descrição
-
Carrega um caractere na coleção Characters .
-
Sintaxe
-
agent**. Characters.Load "CharacterID",** Provider
Parte Descrição CharacterID Obrigatórios. Um valor de cadeia de caracteres que você usará para se referir aos dados de caractere a serem carregados. Provedor Obrigatórios. Um tipo de dados variante que deve ser um dos seguintes: Filespec O local do arquivo local do arquivo de definição do caractere especificado.
URL O endereço HTTP do arquivo de definição do caractere.
Você pode carregar caracteres do subdiretório Agent especificando um caminho relativo (aquele que não inclui dois-pontos ou caractere de barra à esquerda). Isso prefixa o caminho com o diretório de caracteres do Agente (localizado no diretório Windows\msagent localizado). Por exemplo, especificar o seguinte carregaria Genie.acs do diretório Chars do Agente:
Agent.Character.Load "genie", "genie.acs"
Você também pode especificar seu próprio diretório no diretório Chars do Agent.
Agent.Character.Load "genie", "MyCharacters\genie.acs"
Você pode carregar o caractere atualmente definido como o caractere padrão do usuário atual, não incluindo um caminho como o segundo parâmetro do método Load .
Agent.Character.Load "character"
Você não pode carregar o mesmo caractere (um caractere com o mesmo GUID) mais de uma vez de uma única instância do controle. Da mesma forma, você não pode carregar o caractere padrão e outros caracteres ao mesmo tempo de uma única instância do controle porque o caractere padrão pode ser o mesmo que o outro caractere. Se você tentar fazer isso, o servidor gerará um erro. No entanto, você pode criar outra instância do controle Agent e carregar o mesmo caractere.
O Provedor de Dados do Microsoft Agent dá suporte ao carregamento de dados de caractere armazenados como um único arquivo estruturado (. ACS) com dados de caractere e dados de animação juntos ou como dados de caracteres separados (. ACF) e animação (. Arquivos ACA). Use o único estruturado . Arquivo ACS para carregar um caractere armazenado em um disco ou rede local e acessado usando um protocolo de arquivo convencional (como nomes de caminho UNC). Use o separado. ACF e . Arquivos ACA quando você deseja carregar os arquivos de animação individualmente de um site remoto em que eles são acessados usando o protocolo HTTP.
Para. Arquivos ACS, usando o método Load , fornece acesso às animações de um caractere. Para. Arquivos ACF, você também usa o método Get para carregar dados de animação. O método Load não dá suporte ao download de . Arquivos ACS de um site HTTP.
Carregar um caractere não exibe automaticamente o caractere. Use o método Show primeiro para tornar o caractere visível.
Se você usar o método Load para carregar um arquivo de caractere armazenado no computador local e a chamada falhar; por exemplo, como o arquivo não foi encontrado, o Agent gera um erro. Você pode usar o suporte em sua linguagem de programação para fornecer uma rotina de tratamento de erros para capturar e processar o erro.
Sub Form_Load
On Error GoTo ErrorHandler
Agent1.Characters.Load "mychar", "genie.acs"
' Successful load
. . .
Exit Sub
ErrorHandler:
' Unsuccessful load
. . .
Resume Next
End Sub
Você também pode lidar com o erro definindo RaiseRequestErrors como False, declarando um objeto e atribuindo a solicitação Carregar a ele. Em seguida, siga a chamada Carregar com uma instrução que verifica o status do objeto Request.
Dim LoadRequest as Object
Sub Form_Load
Agent1.RaiseRequestErrors = False
Set LoadRequest = Agent1.Characters.Load _
("mychar", "c:\some directory\some character.acs")
If LoadRequest.Status Not 0 Then
' Unsuccessful load
. . .
Exit Sub
Else
' Successful load
. . .
End Sub
Se você carregar um caractere que não é local; por exemplo, usando o protocolo HTTP, você também pode marcar para uma falha de carga atribuindo um objeto Request ao método Load. No entanto, como esse método de carregamento de um caractere é tratado de forma assíncrona, marcar seu status no evento RequestComplete. Essa técnica não funcionará carregando um caractere usando o protocolo UNC porque o método Load é processado de forma síncrona.