我正在开发一个在(Windows 窗体)窗口中显示阶段的 Visual Studio 加载项。创建一个新的特殊项目(与加载项相关)会创建一个包含所有必要 .dll 的新项目,以便用户在自己的代码中与舞台交互。在舞台上,演员四处走动,可以与其他演员互动。舞台具有允许用户创建新演员的 UI。用户应该能够在舞台存在时更改 .cs 文件。它是一个插件的原因是用户可以创建和编辑演员的代码,编译它,并立即在舞台上看到他们的演员的结果。
无论如何 - 这工作正常,直到有两个 Visual Studio 实例打开。第二个无法绘制任何东西(我在 Windows 窗体窗口中得到了红色的 X)。我收到一条错误消息,告诉我“在消息过滤器内调用是非法的。(来自 HRESULT 的异常:0x80010005 (RPC_E_CANTCALLOUT_INEXTERNALCALL))。我四处搜索,我能找到的最相关的事情是它可能是一个问题COM 控件或绘画。我不太确定。在这种情况下,有人遇到过这个错误吗?有没有办法让我的加载项在多个 VS 实例上正常运行?