我在midl中有一个COM对象接口

interface InterfaceName : IDispatch
{
  [id(1)] HRESULT FunA(...);
  [id(2)] HRESULT FunB(...);
  [id(3)] HRESULT FunC(...);
}

ID需要连续吗?或者我可以定义它

interface InterfaceName : IDispatch
{
  [id(1)] HRESULT FunA(...);
  [id(3)] HRESULT FunB(...);
  [id(5)] HRESULT FunC(...);
}

编译第二个版本似乎没问题,但在运行时会出现任何问题吗?

实际id值是任意数字.它们不必是连续的;他们必须是独一无二的.按惯例,零和负值是
reserved for certain special methods.除此之外,没有规则.

dawei

【声明】:淮南站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。