표준 한정자

모든 CIM 규격 구현은 표준 한정자 집합을 처리해야 합니다. 특정 개체에는 모든 한정자가 표시되지 않습니다. 일반적으로 확장 클래스는 클래스 인스턴스 및 클래스에 대한 기타 작업을 손쉽게 프로비전할 수 있도록 추가 한정자를 제공합니다.

한정자를 적용하는 것은 공급자의 책임입니다. WMI는 한정자를 적용하지 않지만 이 한정자만 사용하여 사용자에게 속성 사용 방법을 알려줍니다.

참고

WMI는 CIM 2.5 사양을 준수합니다.

한정자의 제한 사항은 다음과 같습니다.

  • 일부 표준 한정자는 함께 사용할 수 없습니다.
  • 연결 또는 참조와 같은 모든 구문에는 일부 한정자를 적용할 수 없습니다. 이러한 제한 사항은 적용 대상 목록에서 식별됩니다.
  • 연결 또는 참조와 같은 특정 구문의 경우 일부 한정자를 함께 사용할 수 없거나 한 한정자의 사용이 다른 한정자의 값에 대한 일부 제한을 의미할 수 있으므로 법적 한정자의 사용이 더욱 제한될 수 있습니다. 이러한 사용 규칙은 문서화되어 있습니다.
  • 법적 한정자는 연결 또는 참조가 아닌 속성, 메서드, 인스턴스 또는 하위 클래스와 같은 엔터티에서만 상속됩니다. 예를 들어 속성에 적용되는 MaxLen 한정자는 참조에서 상속되지 않습니다.

다음은 WMI 표준 한정자를 보여줍니다.

Abstract

데이터 형식: 부울

적용 대상: 클래스, 연결, 표시

클래스가 추상이며 새 클래스의 기본으로만 사용되는지 여부를 나타냅니다. 기본값은 FALSE입니다. 추상 클래스의 인스턴스는 만들 수 없습니다. 이 한정자가 없으면 클래스가 추상이 아님을 나타냅니다. 따라서 이 한정자는 모든 추상 클래스에 필요합니다.

Aggregate

데이터 형식: 부울

적용 대상: 참조

참조가 집계 연결의 부모 구성 요소인지 여부를 나타냅니다. 기본값은 FALSE입니다.

사용: AggregationAggregate 한정자는 함께 사용되며 Aggregation은 연결을 한정하고 Aggregate는 부모 참조를 지정합니다.

Aggregation

데이터 형식: 부울

적용 대상: 연결

연결이 집계인지 여부를 나타냅니다. 기본값은 FALSE입니다. Aggregate와 함께 사용됩니다. 이 한정자는 모든 집계 연결에 필요합니다.

Alias

데이터 형식: 문자열

적용 대상: 속성, 참조, 메서드

스키마의 속성 또는 메서드에 대한 대체 이름입니다. 기본값은 NULL입니다.

ArrayType

데이터 형식: 문자열

적용 대상: 속성, 매개 변수

정규화된 배열의 형식입니다.

유효한 값은 다음과 같습니다.

  • bag(기본값)
  • 인덱스
  • ordered

사용: 배열인 속성 및 매개 변수에만 이 형식의 한정자를 적용합니다(대괄호 구문을 사용하여 정의됨).

BitMap

데이터 형식: 문자열 배열

적용 대상: 속성, 메서드, 매개 변수

각 중요 위치가 "on" 또는 "off"일 수 있는 중요 비트 위치의 맵입니다. "on" 비트마다 BitValues 배열의 해당 값에 매핑됩니다. 여러 비트를 "on"으로 설정하면 BitValues 배열의 여러 동시 값이 표시됩니다. 기본값은 NULL입니다.

자세한 내용은 BitMap 및 BitValues를 참조하세요.

BitValues

데이터 형식: 문자열 배열

적용 대상: 속성, 메서드, 매개 변수

비트 위치 값을 연결된 문자열로 변환합니다. 기본값은 NULL입니다.

자세한 내용은 BitMap 및 BitValues를 참조하세요.

Constructor

데이터 형식: 부울

적용 대상: 메서드

메서드가 인스턴스를 만드는지 여부를 나타냅니다. 이러한 메서드는 단일 인스턴스 또는 단일 클래스에서 작동하도록 제한되지 않습니다. 예를 들어 생성자는 생성자를 정의하는 클래스의 인스턴스뿐만 아니라 연결 인스턴스를 만들 수 있습니다.

Constructor 한정자는 정보 제공용으로 사용되며 개체 관리자에 의해 작동되지 않습니다. 개체 관리자는 개체를 만들 때 생성자 메서드를 호출할 필요가 없습니다. 또한 생성자를 호출할 때 개체 관리자는 원래 클래스의 부모 클래스에 대해 정의된 생성자 메서드를 호출할 필요가 없습니다. 기본값은 FALSE입니다.

CreateBy

데이터 형식: 문자열

적용 대상: 클래스

이 클래스의 인스턴스를 만드는 메서드의 이름입니다. 값은 "PutInstance" 또는 인스턴스를 만드는 다른 메서드의 이름입니다. 기본값은 NULL입니다.

사용: 이 한정자는 SupportsCreate 한정자가 있는 경우에만 사용할 수 있습니다.

DeleteBy

데이터 형식: 문자열

적용 대상: 클래스

이 클래스의 인스턴스를 삭제하는 메서드의 이름입니다. 값은 "DeleteInstance" 또는 인스턴스를 삭제하는 다른 메서드의 이름입니다. 기본값은 NULL입니다.

사용: 이 한정자는 SupportsDelete 한정자가 있는 경우에만 사용할 수 있습니다.

Description

데이터 형식: 문자열

적용 대상: 모두

명명된 요소에 대한 설명입니다. 기본값은 NULL입니다.

Destructor

데이터 형식: 부울

적용 대상: 메서드

메서드가 인스턴스를 삭제하는지 여부를 나타냅니다. Destructor 한정자를 사용하는 메서드는 소멸자가 적용되는 인스턴스를 삭제하며 단일 인스턴스 또는 클래스에서 작동하도록 제한되지 않습니다. 예를 들어 소멸자는 소멸자를 정의하는 클래스의 인스턴스뿐만 아니라 연결 인스턴스를 삭제할 수 있습니다.

Destructor 한정자는 정보 제공용으로 사용되며 개체 관리자에 의해 작동되지 않습니다. 개체 관리자는 인스턴스가 삭제될 때 Destructor 한정자가 있는 메서드를 호출할 의무가 없습니다. 또한 소멸자를 호출할 때 개체 관리자는 원래 클래스의 부모 클래스에 대해 정의된 소멸자 메서드를 호출할 필요가 없습니다. 기본값은 FALSE입니다.

DisplayName

데이터 형식: 문자열

적용 대상: 모두

요소의 실제 이름 대신 UI에 표시되는 이름입니다. 기본값은 NULL입니다.

EmbeddedInstance

데이터 형식: 문자열

적용 대상: 모두

정규화된 문자열 형식 요소에는 포함된 인스턴스가 포함되어 있습니다. 한정자 값은 정규화된 요소를 소유하는 클래스와 동일한 네임스페이스에 있는 CIM 클래스의 이름을 지정합니다. 포함된 인스턴스는 하위 클래스의 인스턴스를 포함하여 지정된 클래스의 인스턴스입니다. 기본값은 NULL입니다.

Gauge

데이터 형식: 부울

적용 대상: 모두

속성이 음수가 아닌 정수(증가 또는 감소할 수 있지만 최대값을 초과하지 않음)를 나타내는지 여부를 나타냅니다. 기본값은 FALSE입니다.

속성의 최대값은 2^n - 1보다 클 수 없습니다. N은 이 한정자가 적용되는 속성의 데이터 형식에 따라 8, 16, 32 또는 64일 수 있습니다. 계기의 값은 모델링되는 정보가 해당 최대값보다 크거나 같을 때마다 최대값을 갖습니다. 이후에 모델링되는 정보가 최대값 아래로 감소하면 계기도 감소합니다. 이 한정자는 부호 없는 정수 데이터 형식의 속성에만 적용됩니다.

In

데이터 형식: 부울

적용 대상: 매개 변수

매개 변수가 메서드에 값을 전달하는 데 사용되는지 여부를 나타냅니다. 기본값은 TRUE입니다.

In, Out

데이터 형식: 부울

적용 대상: 매개 변수

매개 변수가 입력 및 출력 매개 변수인지 여부를 나타냅니다.

Key

데이터 형식: 부울

적용 대상: 속성, 참조

속성이 네임스페이스 핸들의 일부인지 여부를 나타냅니다. 둘 이상의 속성에 Key 한정자가 있는 경우 이러한 모든 속성이 키(복합 키)를 집합적으로 형성합니다. 함께 사용하는 경우 키 속성은 각 클래스 인스턴스에 대한 고유 참조를 제공해야 합니다. 이 한정자가 속성에 배치되면 TRUE 값만 허용됩니다.

Lazy

적용 대상: 속성

속성이 반환하는 데 리소스를 많이 사용하며 프로세서 시간과 메모리가 많이 필요함을 나타냅니다. WMI는 Lazy 한정자로 표시된 속성을 반환하지 않음으로써 쿼리의 성능을 향상시킵니다.

MappingStrings

데이터 형식: 문자열 배열

적용 대상: 클래스, 속성, 연결, 표시, 참조

속성, 클래스, 연결, 표시 또는 참조의 원본에 대한 자세한 정보를 찾을 수 있는 위치의 경로를 나타내는 값 집합입니다. 매핑 문자열은 디렉터리 경로, URL, 레지스트리 키, 포함 파일, CIM 클래스에 대한 참조 또는 다른 형식일 수 있습니다. 기본값은 NULL입니다.

Max

데이터 형식: int

적용 대상: 참조

지정된 참조가 연결에 있는 다른 참조 값의 각 집합에 대해 가질 수 있는 최대 값 수입니다. 기본값은 NULL입니다. 예를 들어 연결이 A 인스턴스를 B 인스턴스에 연결하고 각 B 인스턴스에 대해 최대 하나의 A 인스턴스가 있어야 하는 경우 A에 대한 참조에는 최대 하나의 한정자가 있어야 합니다.

MaxLen

데이터 형식: int

적용 대상: 속성, 메서드, 매개 변수

문자열 데이터 항목의 최대 길이(문자)이며 고정 길이 배열의 지원을 나타냅니다.

고정 길이 배열이 발견되면 MaxLen 한정자에 구문 분석 중에 찾은 고정 길이가 포함됩니다. 가변 길이 배열이 발견되면 이 한정자는 사용되지 않습니다. MaxLen은 배열에 저장해야 하는 최대 요소 수를 제안하는 데 사용됩니다. 기본값을 재정의할 때 부호 없는 정수 값(uint32)을 지정할 수 있습니다. NULL 값(기본값)은 길이를 제한하지 않음을 의미합니다.

MaxValue

데이터 형식: int

적용 대상: 속성, 메서드, 매개 변수

개체의 최대값입니다. 기본값은 NULL입니다.

Min

데이터 형식: int

적용 대상: 참조

참조의 최소 카디널리티(지정된 참조가 연결에 있는 다른 참조 값의 각 집합에 대해 가질 수 있는 최소 값 수)입니다. 기본값은 0입니다.

예를 들어 연결이 A 인스턴스를 B 인스턴스에 연결하고 각 B 인스턴스에 대해 최소 하나의 A 인스턴스가 있어야 하는 경우 A에 대한 참조에는 최소 하나의 한정자가 있어야 합니다.

MinValue

데이터 형식: int

적용 대상: 속성, 메서드, 매개 변수

개체의 최소값을 나타냅니다. 기본값은 NULL입니다.

ModelCorrespondence

데이터 형식: 문자열 배열

적용 대상: 속성

개체의 속성과 CIM 스키마의 다른 속성 간의 대응을 나타내는 값 집합입니다. 기본값은 NULL입니다.

개체 속성은 다음 구문을 사용하여 식별됩니다.

<스키마 이름> "_" <클래스 또는 연결 이름> "." <속성 이름>

Nonlocal

데이터 형식: 문자열

적용 대상: 참조

인스턴스의 위치이며 값은 <namespacetype>://<namespacehandle>입니다. 기본값은 NULL입니다.

사용: 이 한정자는 NonlocalType 한정자와 함께 사용할 수 없습니다.

NonlocalType

데이터 형식: 문자열

적용 대상: 참조

인스턴스의 위치 유형입니다. 값은 <namespacetype>입니다. 기본값은 NULL입니다.

사용: 이 한정자는 Nonlocal 한정자와 함께 사용할 수 없습니다.

NullValue

데이터 형식: 문자열

적용 대상: 속성

연결된 속성이 NULL임을 나타내는 값입니다(속성에 유효하거나 의미 있는 값이 없음). 기본값은 NULL입니다.

NULL 값을 정의하는 데 사용되는 규칙 및 제한 사항은 ValueMap 한정자에 적용되는 규칙 및 제한 사항과 동일합니다. 이 한정자는 재정의할 수 없습니다. 하위 클래스가 부모 클래스와 다른 NULL 값을 반환하도록 허용하는 것은 바람직하지 않습니다.

Out

데이터 형식: 부울

적용 대상: 매개 변수

매개 변수가 메서드의 값을 반환하는지 여부를 나타냅니다. 기본값은 FALSE입니다.

Override

데이터 형식: 문자열

적용 대상: 속성, 메서드, 참조

파생 클래스에서 동일한 이름의 속성, 메서드 또는 참조에 의해 재정의되는 부모 클래스 또는 하위 구문(속성, 메서드 또는 참조)입니다. 기본값은 NULL입니다.

형식:

[<클래스>.]<하위 구문>

클래스 이름이 생략된 경우 재정의는 클래스 계층 구조의 부모 클래스에 있는 하위 구문에 적용됩니다.

사용: Override 한정자는 동일한 메타 모델을 기반으로 하는 구문만 참조할 수 있습니다. 재정의 작업 중에는 구문 이름 또는 서명을 변경할 수 없습니다.

OverrideValue

적용 대상: 클래스

하위 클래스의 속성 값이 부모 클래스의 값을 재정의하는지 여부를 나타냅니다. 기능적 의미는 부모 클래스에 대해 쿼리를 수행하고 WHERE 절에 이 속성이 포함된 경우 부모가 재정의된 값이 있는 인스턴스를 반환해야 한다는 것입니다. 따라서 Windows Management는 부모 클래스로 전송된 쿼리의 WHERE 절을 조정하여 이 속성에 대한 참조를 제외합니다.

Propagated

데이터 형식: 문자열

적용 대상: 속성

전파되는 키의 이름입니다. 기본값은 NULL입니다.

이 한정자를 사용하면 대상으로 포함하는 클래스가 있는 참조에 약한 한정자가 하나만 있다고 가정합니다. 연결된 속성은 약한 연결의 반대쪽에 있는 클래스의 한정자로 명명된 속성과 동일한 값을 가져야 합니다. 형식:

[<클래스>.]<하위 구문>

사용: Propagated 한정자를 사용하는 경우 Key 한정자를 TRUE 값으로 지정해야 합니다.

Read

데이터 형식: 부울

적용 대상: 속성

속성을 읽을 수 있는지 여부를 나타냅니다. 기본값은 TRUE입니다.

Required

데이터 형식: 부울

적용 대상: 속성

속성에 null이 아닌 값이 필요한지 여부를 나타냅니다. 기본값은 FALSE입니다.

Revision

데이터 형식: 문자열

적용 대상: 클래스, 연결, 표시, 스키마

스키마 개체의 부 수정 번호입니다. 기본값은 NULL입니다.

사용: Revision 한정자를 사용할 때 주 버전 번호를 제공하려면 Version 한정자가 있어야 합니다.

Schema

데이터 형식: 문자열

적용 대상: 속성, 메서드

기능이 정의된 스키마의 이름입니다. 기본값은 NULL입니다.

Source

데이터 형식: 문자열

적용 대상: 클래스, 연결, 표시, 참조

인스턴스의 위치입니다. 기본값은 NULL입니다.

한정자의 값은 <namespacetype>://<namespacehandle>입니다.

사용: Source 한정자는 SourceType 한정자와 함께 사용할 수 없습니다.

SourceType

데이터 형식: 문자열

적용 대상: 클래스, 연결, 표시, 참조

인스턴스의 위치 유형입니다. 이 한정자의 값은 <namespacetype>입니다. 기본값은 NULL입니다.

사용: SourceType 한정자는 Source 한정자와 함께 사용할 수 없습니다.

SupportsCreate

데이터 형식: 부울

적용 대상: 클래스

클래스가 인스턴스 생성을 지원하는지 여부를 나타냅니다. 기본값은 FALSE입니다.

SupportsDelete

데이터 형식: 부울

적용 대상: 클래스

클래스가 인스턴스 삭제를 지원하는지 여부를 나타냅니다. 기본값은 FALSE입니다.

SupportsUpdate

데이터 형식: 부울

적용 대상: 클래스

클래스가 인스턴스 수정(업데이트)을 지원하는지 여부를 나타냅니다. 기본값은 FALSE입니다.

Terminal

데이터 형식: 부울

적용 대상: 클래스

클래스에 하위 클래스가 있을 수 있는지 여부를 나타냅니다. 기본값은 FALSE입니다.

하위 클래스가 선언되면 컴파일러에서 오류가 발생합니다.

사용: 이 한정자는 Abstract 한정자와 함께 사용할 수 없습니다. TerminalAbstract 한정자를 모두 지정하면 컴파일러에서 오류가 발생합니다.

Units

데이터 형식: 문자열

적용 대상: 속성, 메서드, 매개 변수

연결된 데이터 항목이 표현되는 단위의 형식입니다. 기본값은 NULL입니다.

예를 들어 크기 데이터 항목의 Units 값은 "바이트"일 수 있습니다.

ValueMap

데이터 형식: 문자열 배열

적용 대상: 속성, 메서드, 매개 변수

속성, 메서드 반환 형식 또는 메서드 매개 변수에 허용되는 값 집합입니다. 기본값은 NULL입니다.

사용: 이 한정자는 단독으로 사용하거나 Values 한정자와 함께 사용할 수 있습니다. Values 한정자와 함께 사용하는 경우 ValueMap 배열의 값 위치는 Values 배열의 해당 항목 위치를 제공합니다. ValueMap 한정자는 문자열 및 정수 값에만 사용합니다. 값 맵 배열에서 정수 값을 나타내는 구문은 [+|=]digit[*digit]입니다. 콘텐츠, 최대 자릿수 및 표현된 값은 연결된 속성의 형식에 따라 제한됩니다. 예를 들어 uint8은 서명되지 않을 수 있고 4자리 미만이어야 하며 256보다 작은 값을 나타내야 합니다.

Values

데이터 형식: 문자열 배열

적용 대상: 속성, 메서드, 매개 변수

정수 값을 연결된 문자열로 변환하는 값 집합입니다. 기본값은 NULL입니다.

또한 이 속성은 열거 속성에 매핑할 문자열 값의 배열을 지정합니다. 이 한정자는 정수 속성 또는 문자열 속성에 적용할 수 있으며 매핑은 암시적이거나 명시적일 수 있습니다. 매핑이 암시적이면 정수 또는 문자열 속성 값은 Values 배열의 서수 위치를 나타냅니다. 매핑이 명시적이면 속성은 정수여야 하며 유효한 속성 값은 ValueMap 한정자로 정의된 배열에 나열됩니다. 자세한 내용은 값 맵을 참조하세요.

ValueMap 한정자가 없으면 Values 배열은 연결된 속성, 메서드 반환 형식 또는 메서드 매개 변수의 값을 사용하여 인덱싱됩니다(0 상대). ValueMap 한정자가 있으면 값 인덱스는 값 맵의 속성 값 위치에 의해 정의됩니다.

Version

데이터 형식: 문자열

적용 대상: 클래스, 스키마, 연결, 표시

스키마 개체의 주 버전 번호입니다. 기본값은 NULL입니다. 인터페이스를 변경하는 스키마를 변경하면 버전 번호가 증가합니다.

Weak

데이터 형식: 부울

적용 대상: 참조

참조된 클래스의 키에 연결에 있는 다른 참가자의 키가 포함되는지 여부를 나타냅니다. 기본값은 FALSE입니다.

이 한정자는 참조된 클래스의 ID가 연결에 있는 다른 참가자의 ID에 따라 달라지는 경우에 사용됩니다. 지정된 클래스에 대한 참조가 둘 이상 약할 수 없습니다. 연결의 다른 클래스는 키를 정의해야 합니다. 연결에 있는 다른 클래스의 키는 참조된 클래스에서 반복되며 Propagated 한정자를 사용하여 태그가 지정됩니다.

Write

데이터 형식: 부울

적용 대상: 속성

애플리케이션 또는 스크립트가 속성 값을 변경할 수 있음을 나타냅니다. 애플리케이션을 실행하는 계정에는 클래스의 인스턴스가 포함된 네임스페이스에 대한 액세스 권한이 있어야 합니다. 공급자 구현은 공급자 데이터에 대한 액세스를 제한할 수도 있습니다. TRUE 값은 WMI 및 공급자가 액세스할 수 있는 소비자가 속성을 읽고 쓸 수 있음을 나타냅니다. 기본값은 FALSE입니다.

Write 한정자가 없는 속성은 계속 쓸 수 있습니다. 공급자 구현은 Write 한정자가 있는지 여부에 관계없이 공급자 클래스의 속성을 변경할 수 있습니다.

WriteAtCreate

데이터 형식: 부울

적용 대상: 속성

인스턴스를 만들 때 속성을 쓸 수 있는지 여부를 나타냅니다. 이 한정자는 WriteAtCreate 한정자와 함께 사용할 수 있습니다. 기본값은 FALSE입니다.

WriteAtUpdate

데이터 형식: 부울

적용 대상: 속성

인스턴스 업데이트 시 속성을 쓸 수 있는지 여부를 나타냅니다. 이 한정자는 WriteAtCreate 한정자와 함께 사용할 수 있습니다. 기본값은 FALSE입니다.

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows Vista
지원되는 최소 서버
Windows Server 2008

추가 정보

WMI 한정자

한정자 추가