Class 테이블

Class 테이블에는 제품 보급 알림의 일부로 생성해야 하는 COM 서버 관련 정보가 포함되어 있습니다. 각 행은 레지스트리 키 및 값 세트를 생성할 수 있습니다. 연결된 ProgId 정보가 이 표에 포함되어 있습니다.

Class 테이블에는 다음 열이 있습니다.

Column 형식 Nullable
CLSID GUID Y N
Context 식별자 Y N
Component_ 식별자 Y N
ProgId_Default Text N Y
설명 Text N Y
AppId_ GUID N Y
FileTypeMask Text N Y
Icon_ 식별자 N Y
IconIndex 정수 N Y
DefInprocHandler Filename N Y
인수 Formatted N Y
Feature_ 식별자 N N
특성 정수 N Y

 

열 정보

CLSID

COM 서버의 클래스 ID(식별자)입니다.

Context

이 서버의 서버 컨텍스트입니다. CLSID 키에 다음 값 중 하나를 입력합니다.

CLSID 키 설명
LocalServer 16비트 로컬 서버 애플리케이션의 전체 경로를 지정합니다.
LocalServer32 32비트 로컬 서버 애플리케이션의 전체 경로를 지정합니다.
InprocServer In-Process 서버 DLL의 경로를 지정합니다.
InprocServer32 32비트 In-Process 서버 및 스레딩 모델의 경로를 지정합니다.

 

Component_

키 파일이 COM 서버를 제공하는 구성 요소를 지정하는 Component 테이블의 외부 키입니다.

ProgId_Default

이 클래스 ID와 연결된 기본 프로그램 ID입니다. 이 열은 ProgID 테이블의 외래 키입니다.

Description

클래스 ID 및 프로그램 ID와 연결된 지역화된 설명입니다.

AppId_

연결된 애플리케이션에 대한 DCOM 정보가 포함된 애플리케이션 ID(문자열 GUID)입니다. 이 열은 AppId 테이블의 외래 키입니다.

FileTypeMask

HKCR(이 CLSID) 키에 대한 정보를 포함합니다.

여러 패턴이 있는 경우 세미콜론으로 구분되어야 하며 숫자 하위 키는 0, 1, 2...로 생성됩니다. 이 기능에 대한 자세한 내용은 GetClassFile을 참조하세요.

Icon_

이 CLSID와 연결된 아이콘을 제공하는 파일입니다. 설치 관리자는 ProgId와 연결된 DefaultIcon 키 아래에 이 열의 항목을 씁니다. Null이 아닌 경우 열은 Icon 테이블의 외래 키입니다. Null인 경우 COM 서버는 아이콘 리소스를 제공합니다. 보급된 파일 연결 및 바로 가기를 제대로 표시하려면 이 열에 Null이 아닌 값이 필요합니다.

IconIndex

아이콘 파일의 아이콘 인덱스입니다. null일 수 있습니다.

음수가 아닌 숫자만 해당합니다.

DefInprocHandler

이 필드는 Context 필드에 지정된 서버 컨텍스트에 대한 기본 In-Process 처리기를 지정합니다.

InprocServer 또는 InprocServer CLSID 키가 Context 필드에 표시되는 경우 이 필드는 Null이어야 합니다.

LocalServer 또는 LocalServer32 CLSID 키가 Context 필드에 나타나면 DefInprocHandler 필드의 값은 기본 In-Process 처리기를 식별합니다.

설명
숫자가 아닌 값 설치 관리자는 DefInprocHandler 필드의 숫자가 아닌 값을 InprocHandler32 키로 지정된 32비트 In-Process 처리기 역할을 하는 시스템 파일로 처리합니다.
Null DefInprocHandler 및 Argument 필드는 모두 LocalServer 또는 LocalServer32 CLSID 키에 대해 Null일 수 있습니다.
1 = 기본값(시스템) 기본값은 InprocHandler에서 지정한 16비트 In-Process 처리기입니다. 이 경우 InprocHandler 값은 기본 In Process 처리기의 값이 저장되는 레지스트리의 이름입니다. 예를 들어 HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID입니다.
2 = 기본값(시스템) 기본값은 InprocHandler32에서 지정한 32비트 In-Process 처리기입니다. 이 경우 InprocHandler32 값은 기본 In Process 처리기의 값이 저장되는 레지스트리의 이름입니다. 예를 들어 HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID입니다.
3 = 기본값(시스템) 기본값은 16비트 또는 32비트 In Process 처리기입니다.

 

Argument

LocalServer 또는 LocalServer32 CLSID 키가 Context 필드에 나타나면 이 필드의 텍스트가 서버에 대한 인수로 등록되고 COM에서 서버를 호출하는 데 사용됩니다. LocalServer 또는 LocalServer32가 Context 필드에 표시되는 경우 DefInprocHandler 및 Argument 필드는 모두 Null일 수 있습니다.

Argument 필드의 속성 확인은 제한됩니다. 이 필드에 [속성]으로 서식이 지정된 속성은 클래스를 소유하는 구성 요소가 설치될 때 속성에 의도한 값이 이미 있는 경우에만 확인할 수 있습니다. 예를 들어 “[#MyDoc.doc]” 인수가 올바른 값으로 확인되려면 동일한 프로세스에서 MyDoc.doc 파일과 클래스를 소유하는 구성 요소를 설치해야 합니다.

Feature_

COM 서버를 제공하는 기능을 지정하는 Feature 테이블의 외부 키입니다.

Feature 테이블의 열 1에 대한 외부 키입니다.

Attributes

이 열에 msidbClassAttributesRelativePath가 설정된 경우 COM 서버에 대해 베어(bare) 파일 이름을 사용할 수 있습니다. 설치 관리자는 전체 경로 대신 파일 이름만 등록합니다. 이렇게 하면 현재 디렉터리의 서버가 우선적으로 적용되고 동일한 구성 요소의 여러 복사본이 허용됩니다.

attribute Decimal 16진수
msidbClassAttributesRelativePath 1 0x001

 

설명

이 테이블은 RegisterClassInfo 작업 또는 UnregisterClassInfo 작업이 실행될 때 참조됩니다.

유효성 검사

ICE03
ICE06
ICE19
ICE32
ICE36
ICE41
ICE42
ICE46
ICE66
ICE69