在預設內容中強制執行啟用
設定的 COM 元件通常會在自己的內容中啟動;也就是說,COM+ 會參考元件的目錄資訊,以提供任何已設定的服務。 不過,您可以選擇在預設內容中啟用已設定的元件。 基底 COM 元件—沒有 COM+ 目錄資訊的已註冊元件—通常會在預設內容中啟動。
在預設內容中啟用 COM 元件提供三個主要的效能優點,如下所示:
- 您可以藉由限制所建立的內容數目來儲存系統資源。
- 您可以藉由限制跨內容呼叫的數目來提升效能。 因為跨內容呼叫需要封送處理,所以在預設內容中啟動的 COM 物件對預設內容中的其他對象進行呼叫會更快。 在此情況下的效能(相同內容中的呼叫)類似於呼叫子程式。
- 您可以將較舊的 COM 應用程式匯入 COM+ 並加以執行,而不會發生問題。 例如,您可能會在假設允許在 Apartment 內傳遞對象參考而不封送處理參考的情況下,實作數個較舊的 COM 應用程式。 匯入 COM+ 時,這些 COM 應用程式無法運作,因為對象參考會跨內容界限傳遞。 不過,如果您使用元件服務系統管理工具將應用程式中的所有類別標示為 必須在預設內容中啟動,則可以在匯入時執行這種類型的 COM 應用程式。
在預設內容中啟用已設定元件的主要缺點是 COM+ 未提供任何元件的已設定服務。 增強效能與使用 COM+ 服務的能力之間有取捨。
例如,假設 COM 元件不需要任何 COM+ 服務(例如交易、Just-In-Time 啟用、事件、佇列元件、同步處理或物件共用),而且元件會對可能在預設內容中啟動的其他 COM 元件進行許多呼叫。 在此情況下,最好在預設內容中啟動呼叫元件。
如果 COM 元件需要 COM+ 服務,就無法在預設內容中將其標示為 「必須啟用」。 此外,如果預設內容中啟動的 COM 物件對其他內容中的對象進行數次呼叫,則沒有真正的效能提升。 (如需詳細資訊,請參閱 Contexts.)
在預設內容中強制執行啟用
在 [元件服務] 系統管理工具的詳細數據窗格中,以滑鼠右鍵按下您想要在預設內容中啟用的元件(位於 任何所選 COM+ 應用程式的 [元件 ] 資料夾中,然後按下 [ 屬性]。
在 [元件屬性] 對話框中,按兩下 [ 啟用 ] 索引標籤。
選取 [ 必須在預設內容中啟動] 複選框。
按一下 [確定]。
注意
當您在預設內容中執行已設定的元件時,COM+ 不會啟用該元件的任何已設定服務。 當您取消核取 [必須在默認內容中啟動] 複選框,並在其本身的內容中執行已設定的元件時,這些服務會再次提供。
相關主題