次の方法で共有


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 以降で使用できます。
対象プラットフォーム ユニバーサル
Header wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む)
Library NtosKrnl.lib
[DLL] NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI コンプライアンス規則 HwStorPortProhibitedDDIs(storport), IrqlIoPassive5(wdm), PowerIrpDDis(wdm)

こちらもご覧ください

IoCheckShareAccess

IoRemoveShareAccess

IoSetShareAccess