ActiveX 컨트롤 레지스트리 정보

사용되는 여러 레지스트리 항목 및 플래그가 있습니다. 또한 컨트롤은 제공하는 기능을 분류하는 구성 요소 범주를 지원할 수 있습니다.

컨트롤과 관련된 레지스트리 키는 다음 트리에 별표로 표시됩니다.

HKEY_CLASSES_ROOT
   CLSID
      {control_CLSID}
         ProgID = <identifier>
         InprocServer32 = <filename>.dll
         *DefaultIcon = <filename>.<ext>,resourceID
         *ToolboxBitmap32 = <filename>.<ext>,resourceID
         *Control
         verb
            *n = &Properties...
         *MiscStatus = 0
         TypeLib = {object_typelibID}
         *Version = version_number

DefaultIcon 항목은 컨트롤이 아이콘으로 최소화될 때 표시할 아이콘을 식별하는 데 사용됩니다. ExtractIcon 함수는 지정된 .DLL 또는 .EXE 파일에서 아이콘을 가져오는 데 사용됩니다.

ToolboxBitmap32 항목은 도구 모음 또는 도구 상자 단추의 얼굴에 사용할 16*15 비트맵의 모듈 이름 및 리소스 식별자를 식별합니다. 표준 Windows 아이콘 크기가 너무 커서 이 용도로 사용할 수 없습니다. 이 항목은 특히 컨트롤을 선택하고 디자인 중인 폼에 배치하는 디자인 모드가 있는 컨트롤 컨테이너를 지원합니다. 예를 들어 Visual Basic에서는 디자인 모드 중에 컨트롤의 아이콘이 Visual Basic 도구 상자에 표시됩니다.

컨트롤 항목은 개체를 컨트롤로 표시합니다. 이 항목은 종종 컨테이너에서 대화 상자를 채우는 데 사용됩니다. 컨테이너는 이 하위 키를 사용하여 컨트롤을 표시하는 대화 상자에 개체를 포함할지 여부를 결정합니다.

삽입 가능한 하위 키는 개체가 특수 컨트롤 기능이 없는 현재 위치 포함 개체로만 작동할 수 있는지 여부에 따라 컨트롤과 함께 사용할 수도 있습니다. Insertable로 표시된 개체가 컨테이너의 개체 삽입 대화 상자에 나타납니다. 삽입 가능 항목은 일반적으로 컨트롤이 비제어 컨테이너를 사용하여 테스트되었음을 의미합니다.

InsertableControl 하위 키는 모두 선택 사항입니다. 컨트롤이 컨트롤을 이해하지 못하는 이전 컨테이너에서 작동하도록 설계되지 않은 경우 삽입 가능한 하위 키를 생략할 수 있습니다. 컨트롤은 특정 컨테이너에서만 작동하도록 설계되었으므로 다른 컨테이너에 삽입하지 않으려는 경우 컨트롤 키를 생략할 수 있습니다.

컨트롤에는 속성 동사, OLEIVERB_PROPERTIES 지원되는 다른 동사와 함께 있어야 합니다. 속성 동사뿐만 아니라 표준 동사 OLEIVERB_PRIMARY 컨트롤에 속성 시트를 표시하도록 지시합니다. 속성 동사는 컨트롤이 활성 상태일 때 컨테이너 메뉴의 속성 항목으로 표시됩니다. 이러한 방식으로 컨트롤은 컨테이너가 컨트롤을 처리하지 않더라도 최종 사용자에게 몇 가지 유용한 기능을 허용하는 자체 속성 페이지를 표시할 수 있습니다.

컨트롤은 잠재적인 컨테이너에 자신을 설명하는 MiscStatus 키를 정의합니다. 비트는 OLEMISC의 값을 사용하고 컨트롤은 이 열거형에 여러 값을 추가합니다. 자세한 내용은 OLEMISC 열거형 값을 참조하세요. 클라이언트는 컨트롤을 먼저 인스턴스화할 필요 없이 IOleObject::GetMiscStatus 를 호출하여 이 정보를 가져올 수 있습니다.

마지막으로 Version 은 이 컨트롤과 연결된 형식 라이브러리의 버전과 일치해야 하는 컨트롤의 버전을 설명합니다.

또한 컨트롤에 대한 형식 정보에서 특성 컨트롤은 coclass 항목을 컨트롤을 설명하는 것으로 표시합니다.