Я следовал старому учебнику по использованию MS Agent с C #, и я не собираюсь использовать альтернативу ему, я специально хочу использовать MS Agent.
Я добавил ссылку на объект COMMicrosoft Agent Control 2.0
в ссылках (и пришлось исправить некоторый код, чтобы снова иметь правильный синтаксис).
Я использую Windows 10, но это не проблема, например, MASH работает нормально.
Если я собираю его для x86, я получаю следующую ошибку:
![this error](https://i.stack.imgur.com/8TIYd.png)
Сборка для x64 говорит мне, что она не зарегистрирована (делаетсмысл):
![unregistered](https://i.stack.imgur.com/xOZyI.png)
Вот мой код:
public partial class Form1 : Form
{
private AgentObjects.Agent Agent1;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
try
{
Agent1 = new AgentObjects.Agent();
Agent1.Characters.Load("Ralsei", "Ralsei.acs");
var ralsei = Agent1.Characters["Ralsei"];
ralsei.Show();
}
catch (Exception ex)
{
MessageBox.Show("Can't use MS Agent.\n"+ex.ToString());
}
}
}
Как видите, единственное событие Form1
имеетLoad
, поэтому я не стал добавлять Design.cs
.
Обновление 1: эта проблема на самом деле, похоже, НЕ связана с запуском Windows 10, как я и думал.Сборка для .NET 4 и запуск в XP показывает ту же ошибку.
![the error on xp](https://i.stack.imgur.com/K5wdV.png)
Обновление 2: я решил возиться с VBScript, который работаетнормально с аналогичным кодом ????
![working fine in VBScript](https://i.stack.imgur.com/8jYNl.png)
Обновление 3: я подумал hmm, maybe VBScript does this differently than I am in C#
и решил попробовать использовать объект ActiveX.
![enter image description here](https://i.stack.imgur.com/8AaUc.png)
Буквально та же ошибка, спасибо C # очень круто