COM组件问题不解?
假设组件CA是双重接口的,自定义接口是IX和IY以及调度接口IDispatch,那我们可以通过IDispatch访问,也可以通过IX和IY各自的vtbl表来访问方法和属性。
现在假设IX和IY两个接口中都有一个函数名为FxDataOut的方法。那通过IDispatch接口访问的时候,调用GetIDsOfNames方法时会发生什么情况?因为这个函数是通过函数名称在获取DISPID,遇到同名函数怎么处理。
望大家帮忙解答解答,希望是我想多了
[解决办法]
查MSDN是Windows程序员必须掌握的技能之一。
mk:@MSITStore:C:\MSDN98\98VS\2052\vccore.chm::/HTML/_core_Debugging_Specific_Types_of_Applications.htm
Debugging Specific Types of Applications
This section covers the following topics:
Debugging an ActiveX Control
Debugging COM Clients and Servers Using RPC Debugging
Debugging Assertions
Debugging Exceptions
Debugging Inline Assembly Code
Debugging DLLs
Debugging COM Applications with MFC
Debugging Remote Applications
Debugging Threads
[解决办法]
看你是通过那个IDispatch接口调用的,IX,IY要有自己的IDispatch接口
[解决办法]
这可以归结为设计问题。如果感觉有冲突,可以设计使用不同的名称。另外,有相同函数的可以考虑抽出为基接口,再派生IX与IY。