1

如果我通过 IDispatch(后期绑定)使用错误数量/类型的参数调用 COM 对象的方法,是否会返回一些错误代码,或者程序会崩溃或出现其他故障?我只想知道与 IDispatch 的后期绑定是否是类型安全的。

4

1 回答 1

2

这取决于Invoke方法的实际实现IDispatch;它可能会检查传入的参数pDispParams是否正确或盲目使用它们,忽略以错误方式操作它们产生的 COM 错误或将这些错误报告给调用者,...

尽管如此,如果你调用的接口使用默认DispInvoke函数来实现IDispatch::Invoke你应该是安全的,因为它对参数进行了合理的完整性检查。

于 2012-12-09T17:19:42.970 回答