Active Template Library (ATL) 概念

Active Template Library (ATL) 是一組以範本為基礎的 C++ 類別,可讓您建立小型、快速的元件物件模型 (COM) 物件。 它具有主要 COM 功能的特殊支援,包括內建實作、雙重介面、標準 COM 列舉程式介面、連接點、Tear-Off 介面和 ActiveX 控制項。

如果您執行大量的 ATL 程式設計,您可以深入了解 COM 和 .NET 屬性,因為其設計目的就是要簡化 COM 程式設計。 如需詳細資訊,請參閱屬性化程式設計。 (COM 和 .NET 屬性不會與 C++ 標準中的 [[attribute]] 功能混淆。

本節內容

COM 和 ATL 簡介
介紹元件物件模型 (COM) 背後的主要概念。 本文也將簡短說明 ATL 為何及其使用時機。

ATL COM 物件的基本概念
討論各種 ATL 類別之間的關聯性,以及這些類別的實作方式。

雙重介面和 ATL
從 ATL 觀點說明雙重介面。

ATL 集合和列舉程式
說明如何在 ATL 中實作和建立集合和列舉程式。

複合控制項基本概念
提供建立複合控制項的逐步指示。 複合控制項是一種可包含其他 ActiveX 控制項或 Windows 控制項的 ActiveX 控制項。

ATL 控制項內含項目常見問題集
說明以 ATL 裝載控制項的相關基本問題。

ATL COM 屬性頁
說明如何指定及實作 COM 屬性頁。

DHTML 控制項的 ATL 支援
提供建立 DHTML 控制項的逐步指示。

ATL 連接點
說明連接點是什麼,以及 ATL 如何加以實作。

事件處理和 ATL
說明您使用 ATL 的 IDispEventImplIDispEventSimpleImpl 類別來處理 COM 事件時所需執行的步驟。

ATL 和無限制執行緒封送處理器
提供可讓您的類別彙總無限制執行緒封送處理器 (FTM) 的「ATL 簡單物件精靈」選項的詳細資料。

指定專案的執行緒模型
說明哪些巨集可用來控制與您專案中的執行緒有關的執行階段效能。

ATL 模組類別
討論 ATL 7.0 的新模組類別。 模組類別會實作 ATL 所需的基本功能。

ATL 服務
說明在實作服務時會發生的一系列事件。 此外也會討論與開發服務有關的一些概念。

ATL 視窗類別
說明如何在 ATL 中建立 Superclass 和子類別視窗。 ATL 視窗類別不是 COM 類別。

ATL 集合類別
說明如何在 ATL 中使用陣列和對應。

ATL 登錄元件 (登錄器)
討論 ATL 指令碼語法和可置換的參數。 此外也會說明如何設定登錄器的靜態連結。

使用 ATL 和 C 執行階段程式碼進行程式設計
討論以靜態或動態方式連結至 C 執行階段程式庫 (CRT) 的優點。

使用 CComBSTR 進行程式設計
討論使用 CComBSTR 進行程式設計時必須注意的幾種情況。

編碼方式參考
提供在多種常用的網際網路標準 (例如 atlenc.h 中的 UUEncode、十六進位和 UTF8) 中支援編碼的功能和巨集。

公用程式參考
提供程式碼,用以管理 CPathTCUrl 形式的路徑和 URL。 執行緒集區 CThreadPool 可用於您自己的應用程式。 此程式碼可以在 atlpath.h 和 atlutil.h 中找到。

ATL 教學課程
引導您建立控制項,並示範程序中的一些 ATL 基本概念。

ATL 範例
提供 ATL 範例程式連結的描述。

建立 ATL 專案
包含「ATL 專案精靈」的相關資訊。

ATL 控制項精靈
討論如何新增類別。

屬性化程式設計
概述如何使用屬性來簡化 COM 程式設計,並提供詳細主題的連結清單。

ATL 類別概觀
提供 ATL 類別的參考資訊和連結。