SnmpOidCompare 함수(winsnmp.h)
[SNMP는 요구 사항 섹션에 지정된 운영 체제에서 사용할 수 있습니다. 이후 버전에서는 변경되거나 제공되지 않을 수 있습니다. 대신 WS-Man의 Microsoft 구현인 Windows 원격 관리를 사용합니다.]
WinSNMP SnmpOidCompare 함수는 maxlen 매개 변수에 지정된 길이까지 두 개의 SNMP 개체 식별자를 사전적으로 비교합니다.
구문
SNMPAPI_STATUS SNMPAPI_CALL SnmpOidCompare(
[in] smiLPCOID xOID,
[in] smiLPCOID yOID,
[in] smiUINT32 maxlen,
[out] smiLPINT result
);
매개 변수
[in] xOID
비교할 첫 번째 smiOID 개체 식별자에 대한 포인터입니다. 개체 식별자의 길이는 0일 수 있습니다.
[in] yOID
비교할 두 번째 smiOID 개체 식별자에 대한 포인터입니다. 개체 식별자의 길이는 0일 수 있습니다.
[in] maxlen
0이 아닌 경우 비교할 하위 identifier 수를 지정합니다. 이 매개 변수는 MAXOBJIDSIZE: 128 하위 ID, 개체 식별자의 최대 구성 요소 수보다 작아야 합니다. 자세한 내용은 다음 설명 섹션을 참조하세요.
[out] result
비교 결과를 받을 정수 변수에 대한 포인터입니다. 변수는 다음 결과 중 하나를 받을 수 있습니다.
결과 | 의미 |
---|---|
|
xOID 가 yOID보다 큼 |
|
xOID 는 yOID와 같습니다. |
|
xOID가 yOID보다 작음 |
추가 비교 조건은 다음 설명 섹션을 참조하세요.
반환 값
함수가 성공하면 반환 값이 SNMPAPI_SUCCESS.
함수가 실패하면 반환 값이 SNMPAPI_FAILURE. 확장 오류 정보를 얻으려면 세션 매개 변수에 NULL 값을 지정하는 SnmpGetLastError를 호출합니다. SnmpGetLastError 함수는 다음 오류 중 하나를 반환할 수 있습니다.
반환 코드 | 설명 |
---|---|
|
SnmpStartup 함수가 성공적으로 완료되지 않았습니다. |
|
메모리 할당 중에 오류가 발생했습니다. |
|
xOID 및 yOID 매개 변수 중 하나 또는 둘 다 잘못되었습니다. |
|
maxlen 매개 변수가 잘못되었습니다. 매개 변수 크기가 MAXOBJIDSIZE보다 큽니다. |
|
알 수 없거나 정의되지 않은 오류가 발생했습니다. |
설명
WinSNMP 애플리케이션은 SnmpOidCompare 함수를 호출하여 두 개체 식별자에 공통 접두사가 있는지 여부를 확인할 수 있습니다.
maxlen 매개 변수가 0이 아니고 MAXOBJIDSIZE보다 크지 않은 경우 maxlen 값은 비교할 하위 ID 수의 상한을 설정합니다. SnmpOidCompare 함수가 기본값을 가장 작은 수(maxlen 매개 변수 또는 xOID 및 yOID 매개 변수가 가리키는 smiOID 구조체 중 하나의 len 멤버)와 비교하는 최대 하위 identifier 수입니다.
maxlen 매개 변수가 0과 같으면 SnmpOidCompare 함수가 기본값을 비교하는 최대 하위 identifier 수가 두 smiOID 구조체의 len 멤버 중 더 작은 수와 비교됩니다.
결과 매개 변수의 값은 두 smiOID 구조체가 사전순으로 같고 다음 중 하나가 발생하는 경우 xOID가 yOID와 같음을 나타냅니다.
- SnmpOidCompare 는 subidentifier의 maxlen 수를 비교합니다.
- SnmpOidCompare는 최대 하위 identifier 수와 두 smiOID 구조체의 len 멤버를 비교하지만 maxlen 매개 변수보다 작습니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | winsnmp.h |
라이브러리 | Wsnmp32.lib |
DLL | Wsnmp32.dll |