关于IEnumConnections接口的Next方法的参数问题(20分)

  • 主题发起人 主题发起人 gywlily
  • 开始时间 开始时间
G

gywlily

Unregistered / Unconfirmed
GUEST, unregistred user!
[h2][/h2]COM API[red][/red]
IEnumConnections的Next方法在msdn中的定义如下:
HRESULT Next(
ULONG cConnections, //[in]Number of CONNECTDATA structures
// returned in rgpcd
CONNECTDATA **rgpcd, //[out]Array to receive enumerated
// CONNECTDATA structures
ULONG *pcFetched //[out]Pointer to actual number of
// CONNECTDATA structures
);
其中第三个参数*pcFetched是unsigned long型的,
我在delphi中用时:Next(1, ConnectionData, Fetch),我定义Fetch
是cardinal类型,编译时不能通过,错误提示:Incompatible types: 'Cardinal' and 'PLongint'
请问为什么?
delphi6开发人员指南(p32表)中明明指出C++中的unsigned long和delphi中的cardinal
是类型兼容的。
 
//其中第三个参数*pcFetched是unsigned long型的
* 表示传入地址 :)
即 Next(1, ConnectionData, @Fetch);
//你的第二个参数也可能有错误,好好调试一下吧
 
接受答案了.
 

Similar threads

后退
顶部