ZwCreateFile报错0xC0000043,STATUS_SHARING_VIOLATION

本文介绍在驱动开发中使用ZwCreateFile时遇到STATUS_SHARING_VIOLATION错误的解决方案。当指定不正确的共享访问标志时会出现此错误。正确的做法是使用FILE_SHARE_VALID_FLAGS而非0,并提供了一个针对本地文件的解决方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在进行驱动开发时,调用ZwCreateFile报错0xC0000043,STATUS_SHARING_VIOLATION,经过搜索得知参数ShareAccess,指定“共享所有”的正确方法是FILE_SHARE_VALID_FLAGS,而不是0 。下面是帮助网页

https://community.osr.com/discussion/288138

关键回答

//
// MessageId: STATUS_SHARING_VIOLATION
//
// MessageText:
//
// A file cannot be opened because the share access flags are incompatible.
//
#define STATUS_SHARING_VIOLATION ((NTSTATUS)0xC0000043L)

If the file is local, you can call IoCreateFileEx and specify 
IO_IGNORE_SHARE_ACCESS_CHECK. Note that this doesn't do anything for a file 
on a network share.

Also, the proper way to specify "share all" is FILE_SHARE_VALID_FLAGS, not 0 
(which means "share none").

-scott
OSR
@OSRDrivers

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值