次の方法で共有


IoUpdateLinkShareAccess 関数 (wdm.h)

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

構文

void IoUpdateLinkShareAccess(
  [in]                PFILE_OBJECT       FileObject,
  [in, out]           PSHARE_ACCESS      ShareAccess,
  [in, out, optional] PLINK_SHARE_ACCESS LinkShareAccess
);

パラメーター

[in] FileObject

通常は現在のスレッドによって閉じられているファイル オブジェクトへのポインター。

[in, out] ShareAccess

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

[in, out, optional] LinkShareAccess

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

戻り値

何一つ

備考

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

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

必要条件

要件 価値
サポートされる最小クライアント Windows 10 バージョン 1709
サポートされる最小サーバー Windows Server 2016
ターゲット プラットフォーム 万国
ヘッダー wdm.h
ライブラリ NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

関連項目

IoCheckLinkShareAccess

IoRemoveLinkShareAccess

IoSetLinkShareAccess