调用COM对象的一个方法时,可选参数怎么处理?
调用ADODB.Stream对象的Open方法时,这五个参数都是可选的,
[id(0x0000000a), helpcontext(0x0012ccbb)]
HRESULT Open(
[in, optional] VARIANT Source,
[in, optional, defaultvalue(0)] ConnectModeEnum Mode,
[in, optional, defaultvalue(-1)] StreamOpenOptionsEnum Options,
[in, optional, defaultvalue("")] BSTR UserName,
[in, optional, defaultvalue("")] BSTR Password);
我使用pStream->Open(NULL,NULL,NULL,NULL,NULL)
函数执行失败,返回800A0BB9:参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突
问题来了,调用COM对象时的方法时,碰上可选参数怎么办?我过去也有遇到有可选参数的情况,直接传NULL就OK了,可是这次不行。有没高人指教一下?
[解决办法]
阅读说明,看对参数有什么要求。