所有com組件和客戶需要一些相同操作,為保證這些操作是按標準來的,com定義了一個函數庫來實現所有這些操作。此函數庫是在 ole32.dll中實現的。在使用靜態鏈接時,可以使用ole32.lib。
com庫的初始化,除了CoBuildVersion必須首先調用CoInitialize來初始化com庫函數。當進程不再需要庫函數時,必須調用CoUninitialize。
對于一個進程只需初始化一次com庫,如果多次初始化,必須保證每個都有對應的CoUninitialize.
OleInitialize基于com,增添了更多功能。
內存管理。
在組件中分配一塊內存,產生問題:有誰來釋放? 如何釋放?
com解決這一問題方案是:提供一個任務內存分配器。使用它,com可以提供一塊可以由客戶刪除的內存。