IBackgroundCopyJob::TakeOwnership メソッド (bits.h)
ジョブの所有権を現在のユーザーに変更します。
構文
HRESULT TakeOwnership();
戻り値
このメソッドは、次の HRESULT 値と他の値を返します。
リターン コード | 説明 |
---|---|
|
ジョブの所有権が正常に変更されました。 |
|
ジョブの状態をBG_JOB_STATE_CANCELLEDまたはBG_JOB_STATE_ACKNOWLEDGEDすることはできません。 |
|
新しい所有者は、クライアント コンピューター上の一時ファイルへのアクセスが不十分です。 BITS は、所有者のセキュリティ アクセス許可を使用して一時ファイルを作成します。 |
|
ローカル ファイルの現在の所有者のネットワーク ドライブ マッピングは、以前の所有者とは異なります。 |
|
ユーザーには管理者特権がありません。 |
注釈
ジョブの所有権を取得するには、ユーザーがクライアントに対する管理者権限を持っている必要があります。 Windows Vista では、ユーザーは管理者特権の状態で実行する必要があります。 所有権を取得した後、ユーザーが昇格された状態で実行されている間に、ジョブに対する今後の更新を行う必要があります。 詳細については、「ユーザーとネットワークのConnections」を参照してください。
管理者は、別のユーザーのジョブの所有権を取得してプロパティを変更したり、ジョブにファイルを追加したりする必要はありません。 通常、管理者は、ユーザーがジョブを完了するための十分なアクセス許可を持っていない場合、またはユーザーがログオンされておらず、管理者がジョブを完了する必要がある場合に TakeOwnership メソッドを使用します。
ジョブの所有権が変更された後、ジョブは、新しい所有者がクライアントにログオンしている場合にのみ処理されます。 IBackgroundCopyJob::GetOwner メソッドを呼び出して、新しい所有者の SID を取得します。
管理者が所有権を取得した後にジョブを 取り消 すと、管理者がファイルに対する書き込みアクセス許可を持っていないため、ファイルが孤立している可能性があります。 これは、ローカル ファイルの宛先が以前のユーザーのローミング プロファイルにある場合に発生する可能性があります。
TakeOwnership メソッドは、資格情報、証明書、カスタム ヘッダー、コマンド ライン通知 (設定されている場合) をジョブから削除します。
ジョブで イベント通知が指定されている場合、 コールバックは IBackgroundCopyJob::SetNotifyInterface メソッドを呼び出したユーザーのコンテキストで実行されます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP |
サポートされている最小のサーバー | Windows Server 2003 |
対象プラットフォーム | Windows |
ヘッダー | bits.h |
Library | Bits.lib |
[DLL] | QmgrPrxy.dll |