我正在使用带有FSCTL_LOCK_VOLUME的DeviceIoControl在直接磁盘读/写之前锁定USB笔式驱动器。该计划有效 - 有时。 我遇到了锁定调用本身的问题。当我在Visual Studio 2008中执行命令时,结果是正确的,并且锁定成功 - 每次!,当运行代码(调试与否)时,调用会偶尔无效句柄失败。唯一值得注意的区别是当步进暂停半秒时 - 我很满意,但在运行/调试时,呼叫立即失败。
请你能给我一个关于它掉落的地方的暗示。
我认为这是真正的技术人员之一!
答案 0 :(得分:0)
听起来像是一个时间错误。是否有其他线程可以访问句柄?如果是这样,在调用DeviceIoControl之前,其中一个可能正在关闭它。