CreateFile打开磁盘驱动器"\.PHYSICALDRIVE"失败的解决方法

C++调试错误 专栏收录该内容
2 篇文章 0 订阅

打开磁盘驱动器的代码如下

HANDLE hDevice = CreateFile(
    TEXT("\\.\PHYSICALDRIVE0"),
    0,
    FILE_SHARE_READ|FILE_SHARE_WRITE,
    0,
    OPEN_EXISTING,
    0,
    0);

出现错误时,检查这几点:
第一:

路径必须写成
TEXT("\\.\PHYSICALDRIVE0")
而不应该是
TEXT("\.PHYSICALDRIVE0")

第二:OPEN_ALWAYS改成OPEN_EXISTING

我也不知道为什么,虽然从代码语义上来说应该是OPEN_ALWAYS,但是确实要改成OPEN_EXISTING才能成功,我也不知道为什么

第三:在Vista/win7上用管理员权限启动编译好的程序,或者以管理员权限启动VS。

 

转载链接:http://ju.outofmemory.cn/entry/52280

  • 1
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值