EnumerateNtmsObject 함수(ntmsapi.h)
[Windows 7 및 Windows Server 2008 R2를 기준으로 이동식 스토리지 관리자 를 더 이상 사용할 수 없습니다.]
EnumerateNtmsObject 함수는 lpContainerId 매개 변수에 포함된 RSM 개체를 열거합니다.
구문
DWORD EnumerateNtmsObject(
[in] HANDLE hSession,
[in] const LPNTMS_GUID lpContainerId,
[out] LPNTMS_GUID lpList,
[in, out] LPDWORD lpdwListSize,
[in] DWORD dwType,
[in] DWORD dwOptions
);
매개 변수
[in] hSession
OpenNtmsSession 함수에서 반환된 세션에 대한 핸들입니다.
[in] lpContainerId
개체를 열거할 RSM 개체 컨테이너의 고유 식별자입니다. 이 매개 변수는 라이브러리, 미디어 풀, 파티션 ID, 물리적 미디어 또는 논리 미디어의 GUID일 수 있습니다. 컨테이너에 관계없이 dwType 매개 변수로 지정된 형식의 모든 개체를 열거하려면 이 매개 변수를 NULL로 설정합니다. 개체-컨테이너 관계에 대한 자세한 내용은 NtmsObjectsTypes를 참조하세요.
[out] lpList
라이브러리, 드라이브, 미디어 또는 기타 RSM 개체 ID 배열에 대한 버퍼입니다.
[in, out] lpdwListSize
함수가 lpList 매개 변수를 통해 반환할 수 있는 최대 ID 수를 지정하는 변수에 대한 포인터입니다. 반환 시 lpList 의 ID 수는 lpdwListSize에 반환됩니다.
[in] dwType
lpContainerId 컨테이너에서 열거할 개체의 형식입니다. lpContainerId가 NULL이면 RSM에서 지원하는 이 유형의 모든 개체가 열거됩니다. 이 매개 변수는 NtmsObjectsTypes 열거형 형식의 다음 값 중 하나일 수 있습니다.
[in] dwOptions
열거형 옵션입니다. dwType이 NTMS_MEDIA_POOL 경우에만 적용됩니다.
Windows XP: 이 매개 변수는 예약되어 있으며 0으로 설정해야 합니다.
반환 값
이 함수는 다음 값 중 하나를 반환합니다.
값 | 의미 |
---|---|
|
lpdwListSize 포인터가 없거나 lpContainerId가 dwType으로 지정된 개체 형식에 대한 유효한 컨테이너가 아닙니다. |
|
lpdwListSize로 지정된 버퍼 크기가 찾은 모든 개체에 비해 너무 작습니다. 함수는 목록을 잘라내고 lpdwListSize의 실제 크기를 반환합니다. |
|
세션 핸들이 없거나 잘못되었습니다. |
|
처리하는 동안 할당 오류가 발생했습니다. |
|
lpContainerId로 지정된 GUID는 데이터베이스에 있는 컨테이너 개체의 GUID가 아닙니다. |
|
함수가 성공했습니다. lpContainerId에 dwType에 지정된 형식의 개체가 없으면 함수는 ERROR_SUCCESS 반환하고 lpdwListSize는 0입니다. |
설명
보안 함수는 RSM 개체에 대한 특정 액세스 권한을 가져와서 설정하는 데도 사용할 수 있습니다.
lpdwListSize 매개 변수에 지정된 사용 가능한 ID 수가 현재 버퍼 크기보다 큰 경우 lpdwListSize는 필요한 ID 수를 반환합니다. 그러면 애플리케이션이 더 큰 버퍼를 할당하고 다시 시도해야 합니다.
ID를 다른 프로세스에서 추가할 수 있으므로 크기가 조정된 목록이 있는 후속 함수에서 목록이 너무 작다는 오류가 발생할 수 있습니다.
lpContainerId 매개 변수가 NULL로 설정된 경우 RSM은 최상위 개체(예: 라이브러리)를 열거합니다.
둘 이상의 개체가 나열된 경우 개체가 둘 이상의 컨테이너에서 열거될 수 있습니다. NULL 컨테이너는 가장 높은 수준의 컨테이너이며 시스템의 모든 개체를 열거합니다. 예를 들어 특정 라이브러리 또는 시스템의 모든 미디어에서 미디어를 열거할 수 있습니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | ntmsapi.h |
라이브러리 | Ntmsapi.lib |
DLL | Ntmsapi.dll |