ValueMap 및 값 한정자
값 맵은 Value 및 ValueMap 한정자를 사용하여 속성에 연결된 배열입니다.
이 속성은 배열의 값 중 하나를 나타내는 값을 보유하여 배열의 인덱스 역할을 합니다. MOF 코드를 사용하여 다음과 같은 유형의 값 맵을 사용할 수 있습니다.
정수에 대한 배열 매핑입니다.
다음 예제와 같이 Value 한정자를 사용하여 배열을 정의하고 배열을 정수 속성에 직접 연결할 수 있습니다.
[Values {"OK", "Error", "Degraded", "Unknown"}, Read] sint32 Status;
이 예제에서 Status 속성 값은 Value정의된 문자열 배열의 인덱스입니다. 이 속성은 Value 배열에서 1을 뺀 서수 위치에 해당하는 값만 사용할 수 있습니다. 예를 들어 상태 "1"로 설정하면 "오류" 값에 매핑됩니다. 인덱스 속성은 Value 배열의 위치에 해당하는 값만 사용할 수 있습니다. 예를 들어 배열에 10개의 항목이 있는 경우 인덱스 속성은 30 또는 177이 아니라 0부터 9까지의 텍스트 영역이 될 수 있습니다.
정수에 대한 다른 배열 매핑에 대한 배열 매핑입니다.
서수 계수 시스템을 사용하지 않는 인덱스 만들기를 원하는 경우 ValueMap 한정자를 사용합니다. ValueMap 한정자는 다음 예제와 같이 임의 인덱스 번호 매기기 시스템을 보유하는 다른 배열을 설정합니다.
[ValueMap {"1", "3", "99", "0"}, Values {"OK", "Error", "Degraded", "Unknown"}, Read] sint32 Status;
ValueMap 값을 따옴표로 묶어야 하지만 WMI는 값 정수로 간주합니다. 따라서 이 예제에서는 Status 속성을 ValueMap 집합의 정수(1, 3, 99 또는 0)로 설정할 수 있습니다. WMI는 ValueMap 문자열 배열의 서수 위치에서 Value 배열의 해당 위치에 각 정수를 매핑합니다. 예를 들어 상태 0으로 설정하면 "알 수 없음"에 매핑됩니다.
문자열에 대한 다른 배열 매핑에 대한 배열 매핑입니다.
정수로 배열을 인덱싱하지 않으려면 문자열을 사용하여 배열에 가능한 값 중 하나를 저장할 수 있습니다. 이렇게 하려면 다음 예제와 같이 Value 및 ValueMap 배열을 모두 정의해야 합니다.
[ValueMap {"OK", "Error", "Degraded", "Unknown"}, Values {"OK", "Error", "Degraded", "Unknown"}, Read] string Status;
문자열 속성을 사용하면 속성의 실제 허용 값은 ValueMap 배열의 항목입니다. 예를 들어 상태 "확인" 또는 "알 수 없음"으로 설정할 수 있습니다.
유용한 방법으로 매핑을 활용하는 것은 애플리케이션에 달려 있습니다. 법적 값 범위를 적용하는 것은 공급자에게 달려 있습니다.
발언
ValueMap/Value 또는 BitMap/BitValues 한정자를 사용할지 여부를 결정할 때 표시되는 값이 동시에 발생할 수 있는지 여부를 결정합니다. 여러 동시 값이 있을 수 있는 경우 BitMap/BitValues사용해야 합니다. 모든 값이 상호 배타적인 경우 ValueMap/Value 한정자를 사용해야 합니다.
관련 항목