C# 调用Domino互操作会导致调用应用程序和Lotus Notes客户端崩溃

C# 调用Domino互操作会导致调用应用程序和Lotus Notes客户端崩溃,c#,.net,c#-4.0,lotus-notes,com-interop,C#,.net,C# 4.0,Lotus Notes,Com Interop,我们的应用程序希望在日历中显示Lotus Notes中的约会。我们通过使用Domino.interop来实现这一点。对于一些运行Notes 9.0.1FP2的用户,应用程序有时会死机 通常情况下,用户打开日历以显示Notes约会,然后导航到应用程序中的另一个页面。在这之后,他让应用程序单独运行了一个小时左右,然后当他回来刷新应用程序时,它只是默默地关闭,没有显示错误消息。然后Notes系统调试器启动并记录一些错误。它说有一个访问违反。之后,Notes客户端崩溃 我们的应用程序是用C#编写的,我们

我们的应用程序希望在日历中显示Lotus Notes中的约会。我们通过使用Domino.interop来实现这一点。对于一些运行Notes 9.0.1FP2的用户,应用程序有时会死机

通常情况下,用户打开日历以显示Notes约会,然后导航到应用程序中的另一个页面。在这之后,他让应用程序单独运行了一个小时左右,然后当他回来刷新应用程序时,它只是默默地关闭,没有显示错误消息。然后Notes系统调试器启动并记录一些错误。它说有一个访问违反。之后,Notes客户端崩溃

我们的应用程序是用C#编写的,我们监听未处理的线程异常以及AppDomain.UnhandledException事件。没有这样的事件发生

当我访问Domino.interop时,它是作为一个COM进程内调用完成的,这当然会导致调用应用程序崩溃,但它如何使Notes客户端也崩溃呢?毕竟,这是一个不同的过程


感觉这里发生了一些奇怪的事情。

我有一个simalar问题

调用
Session.GetDatabase()
时,异常会在它的一个子线程中抛出。
以下是对我的帮助:

  • 卸载LotusNotes
  • 备份本地数据库文件
    这会让你很好地了解哪些东西可能是重要的。它是用德语写的,但无论如何都有帮助
  • 删除注册表项
    我删除了
    HKEY\U LOCAL\U MACHINE
    HKEY\U CURRENT\U USER
    下的条目
    只要查找
    软件
    ,您就会在那里找到IBM。
    HKEY-LOCAL-MACHINE-->软件-->Wow6432Node
    中还隐藏了一些IBM的东西
  • 重新安装Lotus Notes
  • 这很好地解决了我的问题。

    错误的真正来源尚未发现…

    您是否已联系IBM技术支持以与他们一起解决问题?Notes客户端应该将数据(一个.nsd文件和一些其他文件)保存在IBM技术支持文件夹中,它们应该能够帮助您解释。至于为什么除了进程之外,Notes客户端还会崩溃,客户端和使用Notes API的独立进程之间并没有完全隔离。Notes核心DLL中有很多共享内存。