Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
[O Microsoft Agent foi preterido a partir do Windows 7 e pode não estar disponível em versões subsequentes do Windows.]
-
Descrição
-
Sintaxe
-
agente**. Characters.Load "CharacterID",** Provider
Peça Descrição CharacterID Necessário. Um valor de cadeia de caracteres que você usará para fazer referência aos dados de caracteres a serem carregados. Provedor Necessário. Um tipo de dados variante que deve ser um dos seguintes: Filespec O local do arquivo de definição do caractere especificado.
URL O endereço HTTP do arquivo de definição do caractere.
Comentários
Você pode carregar caracteres do subdiretório Agent especificando um caminho relativo (que não inclua dois pontos ou caracteres 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 Agente.
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 a partir 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 Microsoft Agent Data Provider oferece suporte ao carregamento de dados de caracteres armazenados como um único arquivo estruturado (. ACS) com dados de caracteres e dados de animação juntos ou como dados de caracteres separados (. ACF) e animação (. ACA). Use o único estruturado . ACS para carregar um caractere armazenado em um disco ou rede local e acessado usando um protocolo de arquivo convencional (como nomes de caminhos UNC). Use o arquivo separado . ACF e . ACA quando você deseja carregar os arquivos de animação individualmente de um site remoto onde eles são acessados usando o protocolo HTTP.
Para . Arquivos ACS, usando o método Load fornece acesso às animações de um personagem. Para . ACF, você também usa o método Get para carregar dados de animação. O método Load não suporta o download do . 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 caracteres armazenado na máquina 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 manipular o erro definindo RaiseRequestErrors como False, declarando um objeto e atribuindo a solicitação Load a ele. Em seguida, siga a chamada Load 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 verificar se há uma falha de de carregamento de atribuindo um objetoRequestao método Load. No entanto, como esse método de carregamento de um caractere é manipulado de forma assíncrona, verifique 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.