다음을 통해 공유


EjectNtmsCleaner 함수(ntmsapi.h)

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

EjectNtmsCleaner 함수는 현재 예약된 클리너 슬롯에서 정리 카트리지를 배출합니다.

구문

DWORD EjectNtmsCleaner(
  [in]      HANDLE      hSession,
  [in]      LPNTMS_GUID lpLibrary,
  [in, out] LPNTMS_GUID lpEjectOperation,
  [in]      DWORD       dwAction
);

매개 변수

[in] hSession

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

[in] lpLibrary

라이브러리 개체의 고유 식별자입니다.

[in, out] lpEjectOperation

프로세스 라이브러리 꺼내기 작업의 GUID입니다. dwAction이 NTMS_EJECT_START 경우 이 매개 변수는 작업에 대한 GUID를 받습니다. dwAction이 NTMS_EJECT_STOP 경우 작업을 중지하려면 이 매개 변수를 GUID로 설정해야 합니다.

[in] dwAction

수행할 작업입니다. 이 매개 변수는 다음 값 중 하나일 수 있습니다.

의미
NTMS_EJECT_START
포트를 사용하여 배출 작업을 시작합니다. 지정된 매체는 시간 제한 이벤트가 발생하거나 함수가 NTMS_EJECT_STOP 함께 다시 호출될 때까지 배출됩니다. 제한 시간 값은 라이브러리 개체에 지정되며 라이브러리의 모든 배출에 적용됩니다.
NTMS_EJECT_STOP
NTMS_IEPORT 개체만 있는 라이브러리의 경우 시간 제한 이벤트 경과 전에 lpEjectOperation 에서 지정한 배출 프로세스를 종료합니다.

반환 값

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

의미
ERROR_ACCESS_DENIED
하나 이상의 RSM 개체에 대한 액세스가 거부되었습니다.
ERROR_INVALID_HANDLE
hSession 매개 변수에 제공된 값이 잘못되었습니다.
ERROR_INVALID_LIBRARY
데이터베이스에서 라이브러리 정의를 검색할 수 없습니다.
ERROR_NO_SLOT_SET
이 라이브러리에는 예약된 클리너 슬롯이 없습니다.
ERROR_NOT_CONNECTED
RSM 서비스에 연결할 수 없습니다.
ERROR_SLOT_EMPTY
클리너 슬롯은 예약되어 있지만 이미 비어 있습니다.
ERROR_SLOT_NOT_PRESENT
클리너 슬롯은 예약되어 있지만 슬롯은 현재 라이브러리에 설치되어 있지 않습니다. 이 오류는 라이브러리에서 하나 이상의 잡지가 누락된 경우에 발생합니다.
ERROR_SUCCESS
함수가 성공했습니다.

설명

EjectNtmsCleaner 함수는 꺼내기 요청이 큐에 대기되는 즉시 애플리케이션으로 돌아갑니다.

EjectNtmsCleaner 함수에 지정된 라이브러리에 NTMS_IEPORT 개체가 있는 경우 RSM은 NTMS_IEPORT 개체를 사용하여 클리너를 배출합니다. NTMS_IEPORT 개체가 없는 경우 NTMS_IEDOOR 개체를 사용하여 연산자가 클리너 슬롯에 액세스할 수 있도록 합니다.

배출된 클리너 카트리지는 오프라인 라이브러리에서 추적되지 않습니다.

요구 사항

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

추가 정보

CleanNtmsDrive

클리너 관리 함수

InjectNtmsCleaner

ReleaseNtmsCleanerSlot

ReserveNtmsCleanerSlot