OLE 背景:容器和伺服器
容器應用程式是一種應用程式,可以將內嵌或連結項目加入到本身的文件中。 容器應用程式所管理的檔必須能夠儲存及顯示 OLE 檔元件,以及應用程式本身所建立的資料。 容器應用程式也必須允許使用者視需要啟用伺服器應用程式來插入新專案或編輯現有的專案。 容器應用程式的使用者介面需求列在容器:使用者介面問題 一文 中。
伺服器應用程式或元件應用程式是一個應用程式,可以建立 OLE 檔元件以供容器應用程式使用。 伺服器應用程式通常支援拖放或將資料複製到剪貼簿,讓容器應用程式可以將資料插入為內嵌或連結的專案。 應用程式可以是容器和伺服器。
大部分的伺服器都是獨立應用程式或完整伺服器;它們可以以獨立應用程式的形式執行,也可以由容器應用程式啟動。 迷你伺服器是一種特殊的伺服器應用程式類型,只能由容器啟動。 它無法以獨立應用程式的形式執行。 Microsoft Draw 和 Microsoft Graph 伺服器是迷你伺服器範例。
容器和伺服器不會直接通訊。 相反地,它們會透過 OLE 系統動態連結程式庫 (DLL) 進行通訊。 這些 DLL 提供容器和伺服器所呼叫的函式,而容器和伺服器則提供 DLL 呼叫的回呼函式。
使用這種通訊方式,容器不需要知道伺服器應用程式的實作詳細資料。 它可讓容器接受任何伺服器所建立的專案,而不需要定義可以使用的伺服器類型。 因此,容器應用程式的使用者可以利用未來的應用程式和資料格式。 如果這些新應用程式是 OLE 元件,則複合檔案將能夠納入這些應用程式所建立的專案。