com3:Class(ServiceServer)

com3:ServiceServer 요소에 등록된 Windows 서비스에서 호스트되는 COM 서버에서 클래스 등록을 정의합니다.

요소 계층 구조

<패키지>

    <애플리케이션>

         <애플리케이션>

              <확장>

                   <com2:Extension>

                        com2:ComServer

                             com3:ServiceServer

                                  <com3:Class>

구문

<com3:Class
    Id = 'A GUID in the form xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.'
    DisplayName = 'An optional string with a value between 1 and 256 characters in length.'
    EnableOleDefaultHandler = 'An optional boolean value.'
    ProgId = 'An optional alphanumeric string separated by a period with a value between 1 and 255 characters in length (e.g. Foo.Bar or Foo.Bar.1).'
    VersionIndependentProgId = 'An optional alphanumeric string separated by a period with a value between 1 and 255 characters in length (e.g. Foo.Bar or Foo.Bar.1).'
    AutoConvertTo = 'An optional GUID in the form xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.'
    InsertableObject = 'An optional boolean value.'
    ShortDisplayName = 'An optional string with a value between 1 and 40 characters in length.' >

  <!-- Child elements -->
  ImplementedCategories?,
  Conversion?,
  DataFormats?,
  MiscStatus?,
  Verbs?,
  DefaultIcon?,
  ToolboxBitmap32? 
  
</com3:Class>

? 선택 사항(0 또는 1)

특성 및 요소

특성

attribute 설명 데이터 형식 필수 기본값
ID ID 특성은 CLSID(HKCR\CLSID{MyGuid})에 해당합니다. xxxxxxxx-xxxx-xxxx-xxxx-xxxx 형식의 GUID입니다.
표시 이름 CLSID 키의 기본값에 해당하는 지역화 가능한 문자열입니다. 길이가 1~256자인 선택적 문자열입니다.
EnableOleDefaultHandler InprocHandler32 키의 기본값이 "Ole32.dll"인 경우 true로 설정해야 합니다. 그렇지 않으면 생략해야 합니다. 기본값은 False입니다. 선택적 부울 값입니다.
Progid 프로그래밍 식별자(ProgID)를 CLSID와 연결합니다. 길이가 1~255자인 마침표로 구분된 선택적 영숫자 문자열입니다(예: Foo.Bar 또는 Foo.Bar.1).
VersionIndependentProgId ProgID를 CLSID와 연결합니다. 이 값은 개체 애플리케이션의 최신 버전을 결정하는 데 사용됩니다. 길이가 1~255자인 마침표로 구분된 선택적 영숫자 문자열입니다(예: Foo.Bar 또는 Foo.Bar.1).
AutoConvertTo 지정된 개체 클래스를 새 개체 클래스로 자동 변환하도록 지정합니다. xxxxxxxx-xxxx-xxxx-xxxx-xx 형식의 선택적 GUID입니다.
InsertableObject 이 클래스를 삽입할 수 있음을 나타냅니다. 선택적 부울 값입니다.
ShortDisplayName 클래스 표시 이름의 짧은 버전입니다. 길이가 1~40자인 선택적 문자열입니다.

자식 요소

자식 요소 Description
ImplementedCategories 클래스에서 구현하는 범주를 지정합니다.
변환 클래스의 읽기/쓰기 권한을 지정합니다.
DataFormats 지원되는 기본 및 기본 데이터 형식을 지정합니다.
MiscStatus 개체를 만들고 표시하는 방법을 지정합니다.
동사 애플리케이션에 등록할 동사를 지정합니다.
DefaultIcon 개체의 아이콘 프레젠테이션에 대한 기본 아이콘 정보를 제공합니다.
ToolboxBitmap32 도구 모음 또는 도구 상자 단추의 얼굴에 사용할 16 x 16 비트맵의 모듈 이름 및 리소스 ID를 식별합니다.

부모 요소

부모 요소 Description
com3:ServiceServer 해당 desktop6:Service 요소로 선언된 Windows 서비스에서 호스트되는 COM 서버(하나 이상의 클래스 등록 포함)를 등록합니다.

예제

<?xml version="1.0" encoding="utf-8"?>
<Package IgnorableNamespaces="uap com com2 com3 desktop6"
         xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
         xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
         xmlns:desktop6="http://schemas.microsoft.com/appx/manifest/desktop/windows10/6"
         xmlns:com="http://schemas.microsoft.com/appx/manifest/com/windows10"
         xmlns:com2="http://schemas.microsoft.com/appx/manifest/com/windows10/2"
         xmlns:com3="http://schemas.microsoft.com/appx/manifest/com/windows10/3">
...
    <Applications>
        <Application ...>
            <Extensions>
                <desktop6:Extension Category="windows.service" Executable="ContosoPackagedService.exe" EntryPoint="packagedServiceComServer.service">
                    <desktop6:Service Name="examplePackagedServiceComServer" StartupType="manual" StartAccount="localService" /> 
                </desktop6:Extension>
                <com2:Extension Category="windows.comServer">
                    <com2:ComServer>
                        <com3:ServiceServer ServiceName="examplePackagedServiceComServer" DisplayName="ServicePackage public service server" 
                            LaunchAndActivationPermission="O:SYG:SYD:(A;;11;;;WD)(A;;11;;;RC)(A;;11;;;AC)(A;;11;;;AN)S:P(ML;;NX;;;S-1-16-0)">
                            <com3:Class Id="1BB09D24-6A0F-4C1F-BCB5-FB924324B2F5" DisplayName="CLSID_ContosoPublicServiceNoHandler"/>
                        </com3:ServiceServer>
                        <com3:TreatAsClass Id="2DAA3C97-F340-4C0E-B23C-92338974C5E9" DisplayName="CLSID_ContosoPublicServiceTreatAs" 
                            TreatAs="1BB09D24-6A0F-4C1F-BCB5-FB924324B2F5"/>
                        <com3:ProgId Id="ContosoPublicServiceNoHandler" Clsid="1BB09D24-6A0F-4C1F-BCB5-FB924324B2F5"/>
                        <com3:ProgId Id="ContosoPublicServiceNoHandler.1" CurrentVersion="ContosoPublicServiceNoHandler"/>
                    </com2:ComServer>
                </com2:Extension>
            </Extensions>
        </Application>
    </Applications>
</Package>

요구 사항

Namespace http://schemas.microsoft.com/appx/manifest/com/windows10/3