ローカル キャッシュからユーザーのファイルとディレクトリを削除します。 コンテナー項目を削除すると、含まれているすべての項目が再帰的に削除されます。
構文
HRESULT DeleteItemsForUser(
[in] LPCWSTR pszUser,
[in] LPCWSTR *rgpszPaths,
[in] ULONG cPaths,
[in] DWORD dwFlags,
[in] BOOL bAsync,
[in] IOfflineFilesSimpleProgress *pIProgress
);
パラメーター
[in] pszUser
ファイルを削除するユーザーを識別するテキスト文字列。 このオプションは、ローカル コンピューターの管理者のみが使用できます。 テキスト文字列は、文字列形式のユーザーの SID、またはユーザーの domain\user logon name 文字列です。
[in] rgpszPaths
削除するファイルまたはディレクトリの完全修飾 UNC パスへのポインターの配列。
[in] cPaths
rgpszPaths 内のパスの数。
[in] dwFlags
削除操作の動作を制御するフラグ。 このパラメーターには、次の 1 つ以上の値を指定できます。
OFFLINEFILES_DELETE_FLAG_NOAUTOCACHED (0x00000001)
自動的にキャッシュされたアイテムは削除しないでください。 既定の動作では、自動的にキャッシュされたアイテムが削除されます。
OFFLINEFILES_DELETE_FLAG_NOPINNED (0x00000002)
ピン留めされたアイテムは削除しないでください。 既定の動作では、ピン留めされたアイテムが削除されます。
OFFLINEFILES_DELETE_FLAG_DELMODIFIED (0x00000004)
キャッシュ内でローカルに変更された場合でも削除します。 既定の動作では、同期されていないローカル変更を含むファイルは削除されません。
OFFLINEFILES_DELETE_FLAG_ADMIN (0x80000000)
管理者は、アクセス権に関係なく、すべてのファイルを列挙および削除できます。 このフラグが設定されていて、呼び出し元が管理者でない場合、関数は失敗します。
[in] bAsync
操作を非同期的に実行するかどうかを示します。 このパラメーターが TRUE の場合、操作は非同期操作用にスケジュールされ、関数はすぐに返されます。 このパラメーターが FALSE の場合、関数は操作の完了時に を返します。
[in] pIProgress
操作中に進行状況イベントを受信するイベント シンクへのインターフェイス。 イベントが必要ない場合は、このパラメーターに NULL を指定できます。 非同期操作では、イベント シンクを提供することを強くお勧めします。 非同期操作が完了したときに通知を受け取る唯一の方法は、進行状況の実装です。
戻り値
成功 した場合はS_OK 、それ以外の場合はエラー値を返します。
操作が HRESULT_FROM_WIN32(ERROR_CANCELLED) 取り消された場合は を返します。
操作中に HRESULT_FROM_WIN32(ERROR_MORE_DATA) エラーが発生した場合は を返します。 発生したエラーを検出するには、 IOfflineFilesSimpleProgress::ItemResult コールバック メソッドを使用します。
解説
呼び出し元は、削除するファイルとディレクトリに十分なアクセス権を持っている必要があります。
実行中に削除操作が取り消された場合、その時点まで処理されたファイルに対する変更はロールバックされません。
ディレクトリに対する削除操作で、含まれているすべてのファイルまたはディレクトリを削除できない場合 (アクセスが拒否された場合など)、指定されたディレクトリ エントリは削除されません。 その時点まで削除されたすべてのファイルとディレクトリは削除されたままになります。
ファイルはローカル キャッシュからのみ削除されます。 ネットワーク サーバー上の関連ファイルは影響を受けません。
削除されたファイルはごみ箱から回復できません。 オフラインで使用できるようにするには、削除されたファイルを再キャッシュする必要があります。
rgpszPaths パラメーターに指定されたパスが 1 つだけで、そのパスが 1 つのファイルに対する場合、戻り値はその単一の削除操作の結果を示します。 それ以外の場合、呼び出し元は次の一覧で進行状況コールバック メソッドを実装し、 IOfflineFilesSimpleProgress::ItemResult メソッドを監視して、処理された各ファイルとディレクトリの結果を取得する必要があります。
| 進行状況イベント インターフェイス | メソッド | 説明 |
|---|---|---|
| IOfflineFilesProgress | 開始 | 操作の開始時に呼び出されます。 |
| IOfflineFilesSyncProgress | SyncItemBegin | 各ファイルの処理の開始時に呼び出されます。 |
| IOfflineFilesSyncProgress | SyncItemResult | 各ファイルが削除された後に呼び出されます。 |
| IOfflineFilesProgress | QueryAbort | 取り消し要求を検出するために、同期操作中に定期的に呼び出されます。 |
| IOfflineFilesProgress | End | 操作の最後に呼び出されます。 |
要件
| サポートされている最小のクライアント | Windows Vista |
| サポートされている最小のサーバー | Windows Server 2008 |
| 対象プラットフォーム | Windows |
| ヘッダー | cscobj.h |
| [DLL] | CscSvc.dll;CscObj.dll |