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
1 つ以上の RSM オブジェクトへのアクセスは拒否されます。
ERROR_INVALID_HANDLE
hSession パラメーターで指定された値が無効です。
ERROR_INVALID_LIBRARY
データベースからライブラリ定義を取得できません。
ERROR_NO_SLOT_SET
このライブラリには、クリーナー スロットが予約されていません。
ERROR_NOT_CONNECTED
RSM サービスに接続できません。
ERROR_SLOT_EMPTY
クリーナー スロットは予約されていますが、既に空です。
ERROR_SLOT_NOT_PRESENT
クリーナー スロットは予約されていますが、スロットは現在ライブラリにインストールされていません。 このエラーは、ライブラリに少なくとも 1 つのマガジンがない場合に発生します。
ERROR_SUCCESS
関数は成功しました。

注釈

EjectNtmsCleaner 関数は、取り出し要求がキューに登録されるとすぐにアプリケーションに戻ります。

EjectNtmsCleaner 関数で指定されたライブラリに NTMS_IEPORT オブジェクトがある場合、RSM は NTMS_IEPORT オブジェクトを使用してクリーナーを取り出します。 NTMS_IEPORT オブジェクトがない場合は、NTMS_IEDOOR オブジェクトを使用して、オペレーターがクリーナー スロットにアクセスできるようにします。

取り出されたクリーナー・カートリッジはオフライン・ライブラリーでは追跡されません。

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー ntmsapi.h
Library Ntmsapi.lib
[DLL] Ntmsapi.dll

こちらもご覧ください

CleanNtmsDrive

クリーナー管理機能

InjectNtmsCleaner

ReleaseNtmsCleanerSlot

ReserveNtmsCleanerSlot