gpt4 book ai didi

c# - 如何获取有关 IDispatch COM 接口(interface)故障的更多调试信息

转载 作者:行者123 更新时间:2023-11-28 08:14:11 25 4
gpt4 key购买 nike

我已经实现了一个 c# IDispatch 接口(interface),以允许后期绑定(bind)到我的托管代码。它似乎在被某些第三方程序而不是其他程序调用时起作用。它没有进入托管代码部分来输出调试信息。很可能某些接口(interface)描述(我从 C++ 转换而来)不正确,因此它没有命中代码。是否可以识别第三方软件试图调用哪些方法?

谢谢

编辑:为了尽量使问题不那么模糊,我将描述症状。我已经编写了一个调用 IDispatch 库的测试用例。它适用于一个第三方软件。当我第二次运行它时,它吐出一个错误,没有关于发生错误时它试图调用什么函数的信息。界面中大约有 100 个函数,所以我能想到的唯一选择是按照建议尝试从一些测试代码中调用所有这些函数。这两款第三方软件都是非托管代码。

最佳答案

如果您怀疑问题出在您的 C# 接口(interface)中,那么也许您可以在 C++ 中创建一个代理库并将其插入客户端和服务器之间。代理将只实现 IDispatch 并将所有对 Invoke 的调用转发到服务器上,并且它会记录所有事件。当然,这取决于您的 C++ 接口(interface)定义是否正确,但您似乎对此很有信心。

但在您解决这个问题之前,请仔细检查问题是否更简单。您的描述暗示问题明显出现在客户的计算机上,而不是您自己的计算机上,那么您的服务器是否已在该计算机上正确注册?

关于c# - 如何获取有关 IDispatch COM 接口(interface)故障的更多调试信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8161643/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com