USB记忆棒上的“访问被拒绝” CreateFile()

时间:2019-12-06 15:02:34

标签: c++ winapi access low-level

我的目标是读取USB记忆棒的所有字节。

我尝试用CreateFile()fopen()打开“ D:”,但出现错误:

  

“访问被拒绝”

HANDLE disk = CreateFile("D:", 
                         GENERIC_READ,
                         FILE_SHARE_READ,        
                         NULL,
                         OPEN_EXISTING,
                         FILE_ATTRIBUTE_NORMAL,
                         NULL);

    if (disk == INVALID_HANDLE_VALUE) {
        printf ("%d\n", GetLastError());
        return -1;
    }

此代码显示5(=“访问被拒绝”)。

我正在使用Windows 8和C ++。

有人可以向我解释为什么会引发错误吗?

1 个答案:

答案 0 :(得分:4)

您的文件路径无效。

要打开字母为 D 的设备,应使用以下路径:

"\\.\D:"

这在the docs

中有解释