次の方法で共有


IoUpdateShareAccess 関数 (wdm.h)

IoUpdateShareAccess ルーチンは、特定のファイル オブジェクトの共有アクセスを更新します(通常、ファイルを開くときに)。

構文

void IoUpdateShareAccess(
  [in]      PFILE_OBJECT  FileObject,
  [in, out] PSHARE_ACCESS ShareAccess
);

パラメーター

[in] FileObject

共有アクセスを更新するファイルまたは関連付けられているデバイス オブジェクトを表す参照先のファイル オブジェクトへのポインター。

[in, out] ShareAccess

FileObjectに関連付けられている共通の SHARE_ACCESS 構造体へのポインター。 ドライバーは、この構造体を不透明として扱う必要があります。

戻り値

何一つ

備考

IoUpdateShareAccess はアトミック操作ではありません。 したがって、このルーチンを呼び出すドライバーは、共有アクセス数の破損を防ぐために、ミューテックスやリソース ロックなどの何らかの種類のロックを使用して、IoUpdateShareAccess に渡される共有ファイル オブジェクトを保護する必要があります。

IoUpdateShareAccess 呼び出す前に、呼び出し元は、Update を False に設定 IoCheckShareAccess を正常に呼び出す必要があります。 IoCheckShareAccess するこのような呼び出しは、要求された共有アクセスが、他のオープンによって現在ファイル オブジェクトにアクセスされている方法と互換性があるかどうかを判断しますが、SHARE_ACCESS 構造体は更新されません。 IoUpdateShareAccess 、ファイル オブジェクトに関連付けられている SHARE_ACCESS 構造体を実際に更新します。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 以降で使用できます。
ターゲット プラットフォーム 万国
ヘッダー wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む)
ライブラリ NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI コンプライアンス規則 する HwStorPortProhibitedDDDIs(storport), IrqlIoPassive5(wdm), PowerIrpDDis(wdm)

関連項目

IoCheckShareAccess

IoRemoveShareAccess

IoSetShareAccess