typeFLAGS 枚举 (oaidl.h)
类型标志。
语法
typedef enum tagTYPEFLAGS {
TYPEFLAG_FAPPOBJECT = 0x1,
TYPEFLAG_FCANCREATE = 0x2,
TYPEFLAG_FLICENSED = 0x4,
TYPEFLAG_FPREDECLID = 0x8,
TYPEFLAG_FHIDDEN = 0x10,
TYPEFLAG_FCONTROL = 0x20,
TYPEFLAG_FDUAL = 0x40,
TYPEFLAG_FNONEXTENSIBLE = 0x80,
TYPEFLAG_FOLEAUTOMATION = 0x100,
TYPEFLAG_FRESTRICTED = 0x200,
TYPEFLAG_FAGGREGATABLE = 0x400,
TYPEFLAG_FREPLACEABLE = 0x800,
TYPEFLAG_FDISPATCHABLE = 0x1000,
TYPEFLAG_FREVERSEBIND = 0x2000,
TYPEFLAG_FPROXY = 0x4000
} TYPEFLAGS;
常量
TYPEFLAG_FAPPOBJECT 值: 0x1 描述 Application 对象的类型说明。 |
TYPEFLAG_FCANCREATE 值: 0x2 可以通过 ITypeInfo::CreateInstance 创建类型的实例。 |
TYPEFLAG_FLICENSED 值: 0x4 该类型已授权。 |
TYPEFLAG_FPREDECLID 值: 0x8 该类型是预定义的。 该客户端应用程序应自动创建具有此属性的对象的单个实例。 指向该对象的变量名称与该对象的类名相同。 |
TYPEFLAG_FHIDDEN 值: 0x10 该类型不应显示在浏览器中。 |
TYPEFLAG_FCONTROL 值: 0x20 该类型是派生其他类型的控件,并且不应显示给用户。 |
TYPEFLAG_FDUAL 值: 0x40 接口提供 IDispatch 和 VTBL 绑定。 |
TYPEFLAG_FNONEXTENSIBLE 值: 0x80 该接口在运行时无法添加成员。 |
TYPEFLAG_FOLEAUTOMATION 值: 0x100 该接口中使用的类型与自动化(包括 VTBL 绑定支持)完全兼容。 在接口上设置 dual 除了TYPEFLAG_FDUAL之外,还会设置此标志。 在调度接口上不允许。 |
TYPEFLAG_FRESTRICTED 值: 0x200 不应是可从宏语言访问的。 此标志适用于系统级类型或类型浏览器不应显示的类型。 |
TYPEFLAG_FAGGREGATABLE 值: 0x400 该类支持聚合。 |
TYPEFLAG_FREPLACEABLE 值: 0x800 类型是可替换的。 |
TYPEFLAG_FDISPATCHABLE 值: 0x1000 指示接口直接或间接派生自 IDispatch。 此标志是计算的。 标志没有对象描述语言。 |
TYPEFLAG_FREVERSEBIND 值: 0x2000 类型具有反向绑定。 |
TYPEFLAG_FPROXY 值: 0x4000 可以使用此标志标记接口,以指示它们将使用代理/存根动态链接库。 此标志指定在取消注册 typelib 时,不应取消注册 typelib 代理。 |
注解
TYPEFLAG_FAPPOBJECT可用于 TypeKind = TKIND_COCLASS的类型说明,并指示类型说明指定 Application 对象。
Application 对象的成员可全局访问。 与库关联的 ITypeComp 实例的 Bind 方法绑定到 Application 对象的成员,就像对 TypeKind = TKIND_MODULE的类型说明一样。
类型说明隐式定义一个全局变量,该变量的名称和类型与类型说明所描述的类型相同。 此变量也是全局可访问的。 向 Bind 传递 Application 对象的名称时,将返回 VARDESC,用于描述隐式变量。 隐式创建的变量的 ID 始终ID_DEFAULTINST。
调用 Application 对象类型说明的 ITypeInfo::CreateInstance 函数,然后使用 GetActiveObject 检索 Application 对象。 如果 GetActiveObject 因应用程序未运行而失败,则 CreateInstance 会调用 CoCreateInstance,这将启动应用程序。
设置TYPEFLAG_FCANCREATE后, CreateInstance 可以创建此类型的实例。 这仅适用于为其指定了全局唯一标识符 (GUID) 的组件对象类。
要求
要求 | 值 |
---|---|
Header | oaidl.h |