啟用內容 是記憶體中的數據結構,其中包含系統可用來重新導向應用程式以載入特定 DLL 版本、COM 物件實例或自定義視窗版本的資訊。 啟用內容的一個區段可能包含 DLL 載入器所使用的 DLL 重新導向資訊;另一個區段可能包含 COM 伺服器資訊。 啟用內容函式會使用、建立、啟動和停用啟用內容。 啟用函式可以將應用程式的系結重新導向至指定特定 DLL 版本、視窗類別、COM 伺服器、類型連結庫和介面的版本命名物件。 如需開啟內容函式和結構的詳細資訊,請參閱 啟用內容參考。
從 Windows XP 開始,啟用內容函式可讓 Windows 使用 指令清單中的資訊, 建立版本命名的物件。 如果應用程式藉由呼叫 CreateProcess來建立進程,Windows 會檢查 應用程式指令清單是否存在。 如果指令清單存在,Windows 會使用指令清單中的資訊來填入啟用內容。 由於指令清單描述應用程式對 並存元件 版本的相依性,因此指令清單中未指定版本的物件會對應至版本命名的物件。 例如,指令清單可能會描述 DLL、檔案、視窗類別、COM 伺服器、類型連結庫和介面。
在啟用內容中建立全域物件時,系統會藉由諮詢指令清單,自動為物件提供版本特定的名稱。 當應用程式執行並要求具名物件時,它會取得版本命名的物件。 這可讓多個程式代碼模組版本同時在系統上執行,而不會互相干擾。 例如,Windows Shell 會使用指令清單來描述對 COMCTL32 6.0 版的相依性,以及建立窗口類別的版本。
如果應用程式藉由呼叫 CreateWindow來建立資源,則進程會指定該函式的類別名稱。 GetCurrentActCtx 的呼叫 取得目前的啟用內容,並檢查指定的類別名稱是否存在對應。 如果對應存在,它會使用該版本的呼叫程式來解析對應,並提供版本特定的類別名稱。 Windows 會建立一個視窗,其中包含與該類別名稱和版本相關聯的視窗程式、樣式和其他屬性。
在大部分情況下,啟用內容是由系統所管理。 應用程式開發人員和元件提供者通常不需要呼叫堆疊。 應用程式可以直接呼叫啟用內容來管理啟用內容。 如需詳細資訊,請參閱使用啟用內容 API 。