CfOpenFileWithOplock function (cfapi.h)
Opens an asynchronous opaque handle to a file or directory (for both normal and placeholder files) and sets up a proper oplock on it based on the open flags.
HRESULT CfOpenFileWithOplock( [in] LPCWSTR FilePath, [in] CF_OPEN_FILE_FLAGS Flags, [out] PHANDLE ProtectedHandle );
Fully qualified path to the file or directory to be opened.
Flags to specify permissions on opening the file.
An opaque handle to the file or directory that is just opened. Note that this is not a normal Win32 handle and hence cannot be used with non-CfApi Win32 APIs directly.
If this function succeeds, it returns S_OK. Otherwise, it returns an HRESULT error code.
When the oplock is broken, the API will handle the break notification automatically on behalf of the caller by draining all active requests and then closing the underneath Win32 handle.
This aims to removing the complexity related to oplock usages. The caller must close the handle returned by CfOpenFileWithOplock with CfCloseHandle.
|Minimum supported client||Windows 10, version 1709 [desktop apps only]|
|Minimum supported server||Windows Server 2016 [desktop apps only]|