你可能熟悉或不熟悉一首儿童诗称作"杰克建的房子"数百种变种中的一种,它包含大概下面的内容:
这是杰克
这是杰克建的房子
这是杰克建的房子的厨房
这是杰克建的房子的厨房的墙
这是杰克建的房子的厨房的墙的洞
这是做这个在这个杰克建的房子的厨房的墙的洞的老鼠
等等.这首特别的有趣的诗用于练习英语发音的孩子(和我们一些成年人),你可以继续加入更多的名字和介词短语,只要你能记住这么长的链.我们关心类型库是相似的原因,因为我们需要描述一个库,一个库中的接口,一个库中接口的函数和一个库中的接口的函数的参数.
幸运的是,OLE提供类型库创建的服务,或组件,你可以使用它们去描述一个对象或接口的细节.无论什么时候你想为任何目的创建一个类型库,你就会在某种程度上使用这个创建服务.困难的方法使用这个服务就是直接通过OLE某些具体实现的接口.简单的方法就是使用一个ODL脚本,并且让MKTYPLIB编译器去担心困难的方法.下面的两部分描述了这两个过程:第一个对于创建OLE工具的读者更重要.第二个对于我们这些想尽可能简单的创建类型库的人更重要.