Share via


com4:ComServer

宣告 windows.comServer 類型的套件延伸點。 comServer 延伸模組可能包含類別註冊,包括實作這些類別的伺服器啟用詳細資料,以及 ProgId 和 TreatAsClass 註冊,以提供在執行時間參考這些類別的其他識別碼。

元素階層

<封裝>

    <應用程式>

         <應用程式>

              <擴充功能>

                   <com4:Extension>

                        <com4:ComServer>

Syntax

<com4:ComServer>

<!-- Child elements -->
  Class{0,1}
  ExeServer{0,1}
  ServiceServer{0,1}
  SurrogateServer{0,1}
  TreatAsClass{0,1}
  ProgId{0,1}
  InProcessServer{0,1}
  InProcessHandler{0,1}
  ManagedInProcessServer{0,1}
  com5:InProcessServer{0,1}
  com5:InProcessHandler{0,1}

</com4:ComServer>

答案

{} 特定出現次數範圍

屬性和元素

屬性

無。

子元素

子項目 Description
類別 定義 COM 伺服器中的類別註冊。
ExeServer 向一或多個類別註冊註冊 ExeServer。
ServiceServer 向一或多個類別註冊註冊 ServiceServer。
SurrogateServer 向一或多個類別註冊註冊 SurrogateServer。
TreatAsClass 對應至具有 TreatAs 子機碼之 CLSID 註冊的註冊。
ProgId 與 CLSID 相關聯的程式設計識別碼 (ProgID) 。
InProcessServer 向一或多個類別註冊註冊同進程伺服器。
InProcessHandler 使用一或多個類別註冊來註冊同進程處理常式。
ManagedInProcessServer 向一或多個類別註冊註冊 Managed 同進程伺服器。
com5:InProcessServer 向一或多個類別註冊註冊同進程伺服器。 com5 架構會從 com4 架構引進語法驗證的一些次要變更。
com5:InProcessHandler 使用一或多個類別註冊來註冊同進程處理常式。 com5 架構會從 com4 架構引進語法驗證的一些次要變更。

父元素

父元素 描述
com4:Extension 提供將 COM 註冊公開至應用程式套件外部用戶端的功能。 com4 擴充功能是新版本,是先前 COM 架構版本的超集合和取代。

備註

在多應用程式套件中,請務必將 COM 伺服器註冊放在正確的 Applications/Application 資訊清單元素下,因為 COM 伺服器進程會以上階 Applications/Application 元素的身分識別來執行。

在資訊清單中註冊的 COM 伺服器一律會取得啟動身分套件 (AAP) 行為,這表示 COM 伺服器會以新增套件和應用程式宣告的使用者會話預設權杖執行。 這與傳統註冊 COM 伺服器的預設啟用行為不同,其中 COM 伺服器會使用用戶端的權杖執行。 對於大部分的應用程式而言,這項差異並不明顯,因為用戶端通常會以使用者會話預設權杖執行。 不支援其他啟用行為,例如 RunAs

在 Applications/Application 元素下可以有多個 comServer 延伸模組,但在大多數情況下,這並非必要也不建議。 需要多個 comServer 延伸模組的邊緣案例範例是,如果套件需要一些註冊來擁有 CompatMode=「classic」,而其他則有 CompatMode=「modern」,唯一的做法是在延伸模組之間分割它們。

com4 延伸模組中的變更

com4 延伸模組語法是先前 com 延伸模組語法的新超集合。 這個版本的語法支援與舊版語法相同的結構,其中類別註冊是由 ExeServer/Class、SurrogateServer/Class、ServiceServer/Class、InProcessServer/Class、InProcessHandler/Class 或 ManagedInProcessServer/Class 元素表示。

新的語法也支援替代結構,其中:

  • ExeServer/ClassReference、SurrogateServer/ClassReference、ServiceServer/ClassReference、InProcessServer/ClassReference、InProcessHandler/ClassReference 或 ManagedInProcessServer/ClassReference 元素參考最上層 Class 元素

和/或

  • SurrogateServer/InProcessServerClassReference 元素參考 InProcessServer/Class (或者 InProcessServer/ClassReference) 或 ManagedInProcessServer/Class (或者 ManagedInProcessServer/ClassReference) 元素。

新語法結構的主要用途是啟用同一個 CLSID 的進程伺服器、同進程處理常式和跨進程伺服器註冊的組合,盡可能支援傳統登錄配置。 如需 COM 登錄配置的詳細資訊,請參閱 CLSID 機碼

規格需求

Item
Namespace http://schemas.microsoft.com/appx/manifest/com/windows10/4
OS 最低版本 Windows 10 (組建 20348)