类型库属性

以下关键字在 IDL 文件中 语句的上下文中指定类型库信息。

属性 用法
可聚合 coclass 定义为可直接公开另一对象的接口指针的支持对象。
appobject coclass 标识为与完整 EXE 应用程序关联的应用程序对象。
可绑定 指示属性支持数据绑定。 这样,每当属性已更改值时,客户端都会收到通知。
coclass 提供组件对象的受支持接口的列表。
控件 coclass 标识为 COM 控件,容器站点将从中派生其他类型库或组件对象类。
自定义 定义自定义属性(在 MIDL 中未定义)。
默认 指示在 coclass中定义的接口或 dispinterface 表示默认接口。
defaultbind 指示最能表示对象的单个可绑定属性。
defaultcollelem 将属性标记为默认集合元素的访问器函数。 用于Microsoft Visual Basic 代码优化。
defaultvalue 允许指定类型化可选参数的默认值。
defaultvtable 允许对象具有两个不同的源接口。
dispinterface 定义一组属性和方法,可以在其中调用 IDispatch::Invoke
displaybind 指示应向用户显示为可绑定的属性。
dllname(str) 定义包含模块入口点的 DLL 的名称。
标识一个接口,该接口通过 IDispatch 和直接通过 Vtable 公开属性和方法。
条目 通过标识 DLL 中的入口点,指定模块中导出的函数或常量。
helpcontext 指定一个上下文标识符,允许用户在帮助文件中查看有关此元素的信息。
helpfile 设置类型库的帮助文件的名称。
帮助字符串 指定用于描述其应用到的元素的字符串。
helpstringdll 设置用于执行文档字符串查找的 DLL 的名称。
隐藏的 指示该项存在,但不应显示在面向用户的浏览器中。
id 为成员函数(接口或 dispinterface 中的属性或方法)指定 DISPID。
即时绑定 指示将立即通知数据库对数据绑定对象的属性所做的所有更改。
lcid 应用于 语句以及 localeID 参数时,标识类型库或函数参数的区域设置,并允许在库块内使用国际字符。 在 语句中,从使用 lcid 属性的点开始,MIDL 将接受根据指定区域设置本地化的输入。
指示 MIDL 编译器为语句中引用的接口和类生成类型库信息。
许可 指示应用 coclass 已获得许可,并且必须使用 IClassFactory2创建实例。
不可浏览的 指示该属性显示在对象浏览器中(不显示属性值),但不显示在属性浏览器中(该浏览器显示属性值)。
不可创建 阻止客户端使用默认类工厂创建对象接口的实例。
不可扩展的 指定 IDispatch 实现仅包括接口说明中列出的属性和方法,并且无法在运行时使用其他成员进行扩展。
oleautomation 指示接口与自动化兼容。
可选 指定成员函数的可选参数。
propget 指定属性访问器函数。
propput 指定属性设置函数。
propputref 指定使用引用而不是值的属性设置函数。
公共 确保使用 typedef 声明的别名 成为类型库的一部分。
只读 禁止向变量分配新值。
requestedit 指示该属性支持 OnRequestEdit 通知。
受限 指定不能任意调用模块、接口或 dispinterface 的库或成员。
重试 指定接收成员的返回值的参数。
指示 coclass、属性或方法的成员是事件的源。
字符串 指示一维 字符wchar_t字节(或等效)数组或指向此类数组的指针必须被视为字符串。
uidefault 指示类型信息成员是用户界面中显示的默认成员。
usesgetlasterror 指定模块入口点使用 SetLastError 返回错误代码,然后调用方可以调用 GetLastError 来检索错误代码(如果输入函数时出错)。
uuid 指定类型库、coclass或接口的唯一标识符。
vararg 指定该函数采用可变数量的自变量。
版本 标识类型库的特定版本。

 

ODL 文件语法

ODL 文件示例

使用 MIDL 生成类型库