MS IDL的参数为syntax for specifying a defaultvalue
。 我试图为接受VARIANT_BOOL
函数指定一个默认值:如何指定VARIANT_BOOL的默认值?
[id(42)] HRESULT Foo([in, defaultvalue(VARIANT_TRUE)] VARIANT_BOOL bar);
,并得到了以下错误消息:
错误MIDL2035:常量表达式预期
是什么指定默认值bar
应该是VARIANT_TRUE
的正确语法?
您是否知道使用'TRUE'也适用于'VARIANT_BOOL'?我很好奇哪种方法可以做到这一点。 – Motti
TRUE有错误的值。鉴于mshtml.idl是一个核心微软头文件,我假设-1是*官方*方式。 –
'TRUE'在C++中有错误的值,在IDL中它似乎具有正确的值(请参阅我的答案)。关于MSHTML.idl,您在哪里找到它,我有从DLL生成的.tlh和.tli,但不是原始的.idl – Motti