Microsoft代理“无法启动”

时间:2018-12-26 22:29:26

标签: c# windows microsoft-agent

我遵循了有关将MS Agent与C#结合使用的旧教程,并且我不会使用它的替代方法,我特别想使用MS Agent。

我以引用形式向COM对象Microsoft Agent Control 2.0添加了引用(并且必须修复一些代码以再次具有正确的语法)。

我正在使用Windows 10,但这不是问题,例如MASH可以正常工作。

如果我为x86构建它,则会出现以下错误:

this error

为x64构建会告诉我它尚未注册(有意义):

unregistered

这是我的代码:

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

更新2:我决定弄乱VBScript,它在类似的代码下可以正常工作??

working fine in VBScript

更新3:我以为hmm, maybe VBScript does this differently than I am in C#,并决定尝试使用ActiveX对象。

enter image description here

从本质上讲同样的错误,谢谢C#非常酷

2 个答案:

答案 0 :(得分:0)

不幸的是,根据ntroduction to Microsoft Agent,看来:

  

[Microsoft Agent从Windows 7开始不推荐使用,在Windows的后续版本中可能不可用。]

这可能就是为什么您收到Agent was unable to start错误消息的原因。关于更具神秘性的消息,可能是因为您没有在注册表中安装x64版本的COM库(因为不赞成使用该服务,即使您确实安装了它也无济于事)。

希望有帮助!

答案 1 :(得分:0)

如果您使用Windows 10 64位,则可以安装免费的TTS程序Claude来修复错误0x800400154。

此外,请记住,如果您的C#项目以 x86 为目标,那必须添加对“ C:\ Windows \ MSAgent64 \ AgentCtl.dll”的引用,并且如果您的C#项目以x64为目标,则必须添加对“ C:\ Windows \ MSAgent \ AgentCtl.dll”的引用。

相关问题