DsBackupPrepare 関数
[この関数は、[要件] セクションで指定されたオペレーティング システムで使用できます。 それより後のバージョンでは、変更されるか、使用できなくなる場合があります。 Windows Vista 以降では、代わりにボリューム シャドウ コピー サービス (VSS) を使用します。
DsBackupPrepare 関数は、指定されたサーバー上のディレクトリをオンライン バックアップ用に準備し、後続の他のバックアップ関数の呼び出しで使用されるバックアップ コンテキスト ハンドルを返します。
構文
HRESULT DsBackupPrepare(
_In_ LPCTSTR szBackupServer,
_In_ ULONG grbit,
_In_ ULONG btBackupType,
_Out_ PVOID *ppvExpiryToken,
_Out_ LPDWORD pcbExpiryTokenSize,
_Out_ HBC *phbc
);
パラメーター
-
szBackupServer [in]
-
バックアップするサーバーの名前を含む null で終わる文字列へのポインター。 前の円記号は省略可能です。 サーバーは、この関数が呼び出されるコンピューターと同じである必要があります。 サーバー名にアンダースコア (_) 文字を含めることはできません。 サーバー名の例として、"\\server1" があります。
-
grbit [in]
-
ログ ファイルをバックアップするかどうかを決定します。 増分バックアップはサポートされていないため、この値は常に 0 にする必要があります。
-
btBackupType [in]
-
バックアップの種類を指定します。 次のいずれかの値を指定できます。
-
BACKUP_TYPE_FULL
-
完全バックアップを指定します。 完全なディレクトリ (DIT、ログ ファイル、更新ファイル) がバックアップされます。 すべてのデータがバックアップされ、トランザクション ログ ファイルが切り捨てられます。 完全バックアップのみがサポートされます。
-
BACKUP_TYPE_LOGS_ONLY
-
この値はサポートされていません。 データベース自体ではなくデータベース ログのみをバックアップすることを指定します。 これは通常、差分バックアップまたは増分バックアップを実行するときに使用されます。
-
BACKUP_TYPE_INCREMENTAL
-
この値はサポートされていません。 DsBackupPrepare はERROR_INVALID_PARAMETERを返します。
ppvExpiryToken [out]
このバックアップに 関連付けられている有効期限トークンへのポインターを受け取る PVOID 値へのポインター。 pcbExpiryTokenSize は、このデータのサイズ (バイト単位) を受け取ります。 データの復元時にトークンを DsRestorePrepare に渡す必要があるため、呼び出し元はこのトークンの内容をバックアップと共に保存する必要があります。 トークンが格納され、不要になった後、呼び出し元は DsBackupFree を使用して割り当てられたメモリを解放する必要があります。
pcbExpiryTokenSize [out]
ppvExpiryToken のトークンのサイズ (バイト単位) を受け取る DWORD 値へのポインター。
phbc [out]
バックアップのハンドルを 受け取る HBC 値へのポインター。 このハンドルは、DsBackupOpenFile や DsBackupEnd などの他の Directory Service バックアップ関数を呼び出すときに使用されます。
戻り値
関数が 成功した場合はS_OK を返し、それ以外の場合はエラー コードを返します。 次の一覧に、考えられるその他のエラー コードを示します。
-
ERROR_ACCESS_DENIED
-
呼び出し元には、この関数を呼び出す適切なアクセス特権がありません。 DsSetAuthIdentity 関数を使用して、バックアップおよび復元関数に使用する資格情報を設定できます。
-
ERROR_INVALID_PARAMETER
-
szBackupServer または phbcBackupContext が無効です。
-
ERROR_NOT_ENOUGH_MEMORY
-
メモリ割り当てエラーが発生しました。
-
hrCouldNotConnect
-
szBackupServer 内のサーバーが見つかりませんでした。doメイン コントローラーではないか、szBackupServer が正しく書式設定されていません。 この値は ntdsbmsg.h で定義されています。
-
hrInvalidParam
-
ppvExpiryToken または pcbExpiryTokenSize が無効です。 この値は Ntdsbmsg.h で定義されています。
-
RPC_S_INVALID_BINDING
-
関数がリモートで呼び出されるか、szServerName 内のサーバーが doメイン コントローラーではありません。
解説
この関数では、呼び出し元にStandard Edition_BACKUP_NAME特権が必要です。 DsSetAuthIdentity 関数を使用して、この関数が呼び出されるセキュリティ コンテキストを変更できます。
要件
要件 | Value |
---|---|
サポートされている最小のクライアント |
Windows Vista |
サポートされている最小のサーバー |
Windows Server 2008 |
ヘッダー |
|
ライブラリ |
|
[DLL] |
|
Unicode 名と ANSI 名 |
DsBackupPrepareW (Unicode) と DsBackupPrepareA (ANSI) |