클래스에서 지정된 명명된 요소의 모든 세부 정보를 가져옵니다.
구문
MI_INLINE MI_Result MI_Class_GetElement(
[in] const MI_Class *self,
const MI_Char *name,
[out, optional] MI_Value *value,
[out, optional] MI_Boolean *valueExists,
[out, optional] MI_Type *type,
MI_Char **referenceClass,
[out, optional] MI_QualifierSet *qualifierSet,
[out, optional] MI_Uint32 *flags,
[out, optional] MI_Uint32 *index
);
매개 변수
[in] self
요소를 검색할 클래스 개체에 대한 포인터입니다.
name
검색할 요소의 이름에 대한 포인터입니다.
[out, optional] value
요소에 대해 반환된 기본값을 받을 변수에 대한 포인터입니다. 값은 클래스 개체의 수명 동안 유효합니다. 값을 삭제할 필요가 없습니다. 이 매개 변수는 선택적 요소입니다. 이 정보가 필요하지 않은 경우 이 매개 변수에 대해 NULL 을 전달합니다. 이 매개 변수가 NULL이 아닌 경우 valueExists 는 NULL이 아니어야 합니다. valueExists의 반환된 값이 MI_FALSE 경우 기본값은 없습니다.
[out, optional] valueExists
지정된 요소의 기본값이 종료되는지 여부를 나타내는 반환된 부울 값을 받는 변수에 대한 포인터입니다. 매개 변수는 기본값이 종료되면 MI_TRUE . 그렇지 않으면 MI_FALSE. 이 정보가 필요하지 않은 경우 이 매개 변수에 대해 NULL 을 전달합니다.
[out, optional] type
데이터 형식을 지정하는 MI_Type 열거형의 반환된 값을 수신하는 변수에 대한 포인터입니다. 이 정보가 필요하지 않은 경우 이 매개 변수에 대해 NULL 을 전달합니다.
referenceClass
참조의 클래스(요소가 강력한 형식의 참조인 경우) 또는 클래스 이름(요소가 강력한 형식의 포함된 instance 경우)입니다.
[out, optional] qualifierSet
반환된 요소 한정자 집합을 받을 변수에 대한 포인터입니다. 이 매개 변수는 선택적 요소입니다. 한정자 집합과 연결된 메모리는 클래스 개체가 삭제될 때까지 유효합니다. 클래스 한정자 집합 사용을 마치면 MI_Class_Delete 함수를 호출하여 클래스 개체를 삭제합니다. 이 정보가 필요하지 않은 경우 이 매개 변수에 대해 NULL 을 전달합니다.
[out, optional] flags
요소의 다양한 측면을 설명하는 반환된 플래그 값을 수신하는 변수에 대한 포인터입니다. 이 매개 변수는 선택적 요소입니다. 반환된 플래그 값은 상호 배타적 플래그의 특정 그룹을 제외하고 다음 MI_FLAG_* 값의 조합일 수 있습니다.
MI_FLAG_ABSTRACT(131072(0x20000))
클래스가 추상임을 나타내는 클래스 플래그입니다. 이 플래그는 MI_FLAG_CLASS 플래그와 함께 사용하는 경우에만 적용되며 플래그는 MI_FLAG_TERMINAL 플래그와 함께 사용할 수 없습니다.
MI_FLAG_ADOPT(2147483648(0x80000000))
instance 포인터를 채택하고 삭제를 담당함을 나타내기 위해 MI_Instance 구조체에 속성을 추가하고 설정하는 동안 사용되는 속성 플래그입니다. 이 플래그는 MI_FLAG_BORROW 플래그와 함께 사용할 수 없습니다 .
MI_FLAG_ANY(127(0x7F))
이러한 CIM 메타 형식(한정자 scope) 플래그를 필터링하는 데 사용되는 비트 마스크입니다.
- MI_FLAG_CLASS
- MI_FLAG_METHOD
- MI_FLAG_PROPERTY
- MI_FLAG_PARAMETER
- MI_FLAG_ASSOCIATION
- MI_FLAG_INDICATION
- MI_FLAG_REFERENCE
MI_FLAG_ASSOCIATION(16(0x10))
클래스 구조체가 연결 클래스 구조이기도 함을 나타내기 위해 MI_ClassDecl 구조체에 사용되는 CIM 메타 형식입니다. 이 플래그는 다른 CIM 메타 형식(한정자 scope) 플래그와 함께 사용할 수 없습니다.
MI_FLAG_BORROW(1073741824(0x40000000))
instance 값을 복사하지 않음을 나타내기 위해 MI_Instance 구조체에 속성을 추가하고 설정하는 동안 사용되는 속성 플래그입니다. 값은 instance 삭제될 때까지 유효한 상태를 유지해야 합니다. 이 플래그는 MI_FLAG_ADOPT 플래그와 함께 사용할 수 없습니다 .
MI_FLAG_CLASS(1(0x1))
클래스를 설명하는 구조를 나타내기 위해 MI_ClassDecl 구조에 사용되는 CIM 메타 형식입니다. 이 플래그는 다른 CIM 메타 형식(한정자 scope) 플래그와 함께 사용할 수 없습니다.
MI_FLAG_DISABLEOVERRIDE(256(0x100))
한정자를 재정의할 수 없음을 나타내는 한정자 플래그 버전입니다. 이 플래그는 MI_FLAG_ENABLEOVERRIDE 플래그와 함께 사용할 수 없습니다 .
MI_FLAG_ENABLEOVERRIDE(128(0x80))
한정자를 재정의할 수 있음을 나타내는 한정자 플래그 버전입니다. 이 플래그는 MI_FLAG_DISABLEOVERRIDE 플래그와 함께 사용할 수 없습니다 .
MI_FLAG_EXPENSIVE(524288(0x80000))
속성이 비용이 많이 든다는 것을 나타내는 속성 플래그입니다. 대부분의 엔진과 클라이언트는 이 개념을 지원하지 않으며 모든 속성은 항상 반환되지만 공급자는 클라이언트가 요청하지 않는 한 고가의 속성을 제공할 필요가 없습니다. 이 플래그는 MI_FLAG_PROPERTY 플래그와 함께 사용하는 경우에만 적용됩니다.
MI_FLAG_IN (8192 (0x2000))
매개 변수가 In 형식이고 메서드에 전달됨을 나타내는 매개 변수 플래그입니다. 이 플래그는 MI_FLAG_PARAMETER 플래그와 함께 사용하는 경우에만 적용됩니다.
MI_FLAG_INDICATION(32(0x20))
클래스 구조체가 표시 클래스 구조이기도 함을 나타내기 위해 MI_ClassDecl 구조체에 사용되는 CIM 메타 형식입니다. 이 플래그는 다른 CIM 메타 형식(한정자 scope) 플래그와 함께 사용할 수 없습니다.
MI_FLAG_KEY(4096(0x1000))
요소가 키 속성임을 나타내는 속성 플래그입니다. 이 플래그는 MI_FLAG_PROPERTY 플래그와 함께 사용하는 경우에만 적용됩니다.
MI_FLAG_METHOD(2(0x2))
메서드를 설명하는 구조를 나타내기 위해 MI_MethodDecl 구조에 사용되는 CIM 메타 형식입니다. 이 플래그는 다른 CIM 메타 형식(한정자 scope) 플래그와 함께 사용할 수 없습니다.
MI_FLAG_NOT_MODIFIED(33554432(0x2000000))
속성이 수정되지 않음을 나타내는 플래그입니다.
MI_FLAG_NULL(536870912(0x20000000))
속성 값 또는 메서드 매개 변수 값이 null임을 나타내는 플래그입니다.
MI_FLAG_OUT(16384(0x4000))
매개 변수가 Out 형식이고 메서드에서 반환됨을 나타내는 매개 변수 플래그입니다. 이 플래그는 MI_FLAG_PARAMETER 플래그와 함께 사용하는 경우에만 적용됩니다.
MI_FLAG_PARAMETER(8(0x8))
MI_ParameterDecl 구조체에서 매개 변수를 설명하는 구조를 나타내는 데 사용되는 CIM 메타 형식입니다. 이 플래그는 다른 CIM 메타 형식(한정자 scope) 플래그와 함께 사용할 수 없습니다.
MI_FLAG_PROPERTY(4(0x4))
속성을 설명하는 구조를 나타내기 위해 MI_PropertyDecl 구조체에 사용되는 CIM 메타 형식입니다. 이 플래그는 다른 CIM 메타 형식(한정자 scope) 플래그와 함께 사용할 수 없습니다.
MI_FLAG_READONLY(2097152(0x200000))
속성을 읽을 수 있고 쓸 수 없음을 나타내는 속성 플래그입니다. 이 플래그는 MI_FLAG_PROPERTY 플래그와 함께 사용하는 경우에만 적용됩니다.
MI_FLAG_REFERENCE(64(0x40))
다른 인스턴스에 대한 포인터를 설명하는 구조를 나타내기 위해 scope 필드의 MI_QualifierDecl 구조에 사용되는 CIM 메타 형식입니다. 이 플래그는 다른 CIM 메타 형식(한정자 scope) 플래그와 함께 사용할 수 없습니다.
MI_FLAG_REQUIRED(32768(0x8000))
매개 변수를 지정해야 했음을 나타내는 매개 변수 플래그입니다. 이 플래그는 MI_FLAG_PARAMETER 플래그와 함께 사용하는 경우에만 적용됩니다.
MI_FLAG_RESTRICTED(512(0x200))
한정자는 파생 클래스로 전파되지 않음을 나타내는 한정자 버전입니다. 한정자는 선언된 클래스에만 적용됩니다. 이 플래그는 MI_FLAG_TOSUBCLASS 플래그와 함께 사용할 수 없습니다 .
MI_FLAG_STATIC(65536(0x10000))
메서드에서 요소가 정적이며 호출할 키를 지정하는 instance 필요하지 않음을 나타내는 플래그입니다.
MI_FLAG_STREAM(1048576(0x100000))
메서드 매개 변수가 공급자에서 클라이언트로 다시 스트리밍됨을 나타내는 플래그입니다. 이 플래그는 MI_FLAG_PARAMETER 플래그와 함께 사용하는 경우에만 적용됩니다.
MI_FLAG_TERMINAL(262144(0x40000))
클래스를 파생할 수 없음을 나타내는 클래스 플래그입니다. 이 플래그는 MI_FLAG_CLASS 플래그와 함께 사용하는 경우에만 적용되며 플래그는 MI_FLAG_ABSTRACT 플래그와 함께 사용할 수 없습니다.
MI_FLAG_TOSUBCLASS(1024년(0x400))
클래스 한정자는 모든 서브클래스에 의해 자동으로 상속됨을 나타내는 한정자 버전입니다. 이 플래그는 MI_FLAG_RESTRICTED 플래그와 함께 사용할 수 없습니다 .
MI_FLAG_TRANSLATABLE(2048년(0x800))
요소와 연결된 다른 언어가 있을 수 있음을 나타내는 한정자 버전입니다. 번역 가능한 한정자는 문자열과 값을 다른 언어로 지역화할 수 있도록 처리됩니다.
MI_FLAG_VERSION(469762048(0x1C000000))
향후 버전 관리 변경을 처리하기 위해 인프라에서 예약된 3비트입니다.
[out, optional] index
클래스 내에서 요소의 인덱스 수신을 위한 변수에 대한 포인터입니다. 이 정보가 필요하지 않은 경우 이 매개 변수에 대해 NULL 을 전달합니다.
반환 값
이 함수는 MI_INLINE MI_Result 반환합니다.
설명
모든 요소 정보는 읽기 전용입니다. 반환된 정보는 클래스가 삭제될 때까지 유효합니다.
요구 사항
| 요구 사항 | 값 |
|---|---|
| 지원되는 최소 클라이언트 | Windows 8 |
| 지원되는 최소 서버 | Windows Server 2012 |
| 대상 플랫폼 | Windows |
| 헤더 | mi.h |
| 재배포 가능 파일 | windows Server 2008 R2 SP1, Windows 7 SP1 및 Windows Server 2008 SP2의 Windows Management Framework 3.0 |