다음을 통해 공유


GetNtmsObjectAttributeA 함수(ntmsapi.h)

[이동식 스토리지 관리자 더 이상 Windows 7 및 Windows Server 2008 R2를 사용할 수 없습니다.]

GetNtmsObjectAttribute 함수는 지정된 RSM 개체에서 확장 특성(명명된 프라이빗 데이터)을 검색합니다.

통사론

DWORD GetNtmsObjectAttributeA(
  [in]      HANDLE      hSession,
  [in]      LPNTMS_GUID lpObjectId,
  [in]      DWORD       dwType,
  [in]      LPCSTR      lpAttributeName,
  [out]     LPVOID      lpAttributeData,
  [in, out] LPDWORD     lpAttributeSize
);

매개 변수

[in] hSession

OpenNtmsSession 함수에서 반환된 세션에 대한 핸들입니다.

[in] lpObjectId

데이터를 검색할 개체의 고유 식별자입니다.

[in] dwType

RSM 개체 형식입니다. 개체 형식 목록은 NtmsObjectsTypes참조하세요.

[in] lpAttributeName

데이터를 검색할 확장 특성의 이름입니다.

[out] lpAttributeData

데이터를 받는 버퍼에 대한 포인터입니다.

[in, out] lpAttributeSize

입력의 데이터 버퍼 크기(바이트)입니다. 출력에서 데이터의 실제 크기(바이트)입니다.

반환 값

이 함수는 다음 값 중 하나를 반환합니다.

의미
ERROR_ACCESS_DENIED
개체 또는 해당 컨테이너에 대한 NTMS_USE_ACCESS 거부됩니다. 다른 보안 오류도 가능하지만 보안 하위 시스템 오류를 나타냅니다.

Windows XP: 액세스 권한이 필요하지 않습니다.

ERROR_DATABASE_FAILURE
데이터베이스 쿼리 또는 업데이트가 실패했습니다.
ERROR_INSUFFICIENT_BUFFER
버퍼 크기가 올바르게 지정되지 않았습니다. 올바른 크기는 lpAttributeSize 매개 변수에 반환됩니다.
ERROR_INVALID_HANDLE
hSession 매개 변수에 지정된 값이 NULL 유효하지 않습니다.
ERROR_INVALID_PARAMETER
포인터가 NULL 잘못되었습니다.
ERROR_NOT_CONNECTED
RSM 서비스에 연결할 수 없습니다.
ERROR_OBJECT_NOT_FOUND
지정된 특성을 찾을 수 없습니다.
ERROR_SUCCESS
함수가 성공했습니다.

발언

GetNtmsObjectAttribute 함수는 RSM 서버에서 실행되어야 합니다. 바이트 버퍼는 서로 다른 아키텍처의 시스템 간에 구분되지 않으므로 이 함수를 원격으로 실행하면 예측할 수 없는 결과가 발생할 수 있습니다.

다음은 특별한 액세스 권한이 필요한 개체 목록입니다.

객체 접근
NTMS_CHANGER 라이브러리에 NTMS_USE_ACCESS 필요합니다.
NTMS_CHANGER_TYPE 컴퓨터에 NTMS_USE_ACCESS 필요합니다.
NTMS_COMPUTER 컴퓨터에 NTMS_USE_ACCESS 필요합니다.
NTMS_DRIVE 라이브러리에 NTMS_USE_ACCESS 필요합니다.
NTMS_DRIVE_TYPE 컴퓨터에 NTMS_USE_ACCESS 필요합니다.
NTMS_IEDOOR 라이브러리에 NTMS_USE_ACCESS 필요합니다.
NTMS_IEPORT 라이브러리에 NTMS_USE_ACCESS 필요합니다.
NTMS_LIBRARY 라이브러리에 NTMS_USE_ACCESS 필요합니다.
NTMS_LIBREQUEST 라이브러리에 NTMS_USE_ACCESS 필요합니다.
NTMS_LOGICAL_MEDIA 논리 미디어의 미디어 풀에 NTMS_USE_ACCESS 필요합니다.
NTMS_MEDIA_POOL 미디어 풀에 NTMS_USE_ACCESS 필요합니다.
NTMS_MEDIA_TYPE 컴퓨터에 NTMS_USE_ACCESS 필요합니다.
NTMS_OPREQUEST 컴퓨터에 NTMS_USE_ACCESS 필요합니다.
NTMS_PARTITION 측면의 미디어 풀에 NTMS_USE_ACCESS 필요합니다.
NTMS_PHYSICAL_MEDIA 미디어 풀에 NTMS_USE_ACCESS 필요합니다.
NTMS_STORAGESLOT 라이브러리에 NTMS_USE_ACCESS 필요합니다.
 

메모

ntmsapi.h 헤더는 GETNtmsObjectAttribute를 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입대한 규칙을 참조하세요.

요구 사항

요구
지원되는 최소 클라이언트 Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 ntmsapi.h
라이브러리 Ntmsapi.lib
DLL Ntmsapi.dll

참고 항목

EnumerateNtmsObject

개체 관리 함수

SetNtmsObjectAttribute