确定驱动器中有光盘

有时,当我们在Windows文件资源管理器中双击USB驱动器时,会出现一条消息“驱动器中没有光盘”。 我想在阅读光盘上的任何文件之前在我的应用程序中识别此问题。

这怎么可能?

我在Windows平台上并使用Visual C ++进行开发。


如果您知道驱动器号,则可以尝试以下操作:

HANDLE h = CreateFile("\.E:", 0, 0, NULL, OPEN_EXISTING, 0, NULL);
if (h == INVALID_HANDLE_VALUE)
{
    DWORD err = GetLastError();
    if (err == ERROR_FILE_NOT_FOUND)
        printf("The drive E: is not readyn");
    else
        printf("Unknown error %lun", (int)err);
}
else
{
    CloseHandle(h); /* don't forget to close the handle! */
    printf("The drive E: is readyn");
}

也就是说,打开驱动器时不要求读取或写入访问权限。 它只有在驱动器没有准备好时才会失败。 它可以与USB记忆棒一起使用。

链接地址: http://www.djcxy.com/p/55947.html

上一篇: Identify that there is a disc in the drive

下一篇: How to check if a file exists from inside a batch file