2011-08-22 41 views
0

有時,當我們在Windows文件資源管理器中雙擊USB驅動器時,會出現一條消息「驅動器中沒有光盤」。我想在閱讀光盤上的任何文件之前在我的應用程序中識別此問題。確定驅動器中有光盤

這怎麼可能?

我在Windows平臺上並使用Visual C++進行開發。

回答

0

如果您知道驅動器盤符,你可以嘗試以下方法:

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 ready\n"); 
    else 
     printf("Unknown error %lu\n", (int)err); 
} 
else 
{ 
    CloseHandle(h); /* don't forget to close the handle! */ 
    printf("The drive E: is ready\n"); 
} 

也就是說,打開驅動器沒有請求讀取或寫入訪問。它只有在驅動器沒有準備好時纔會失敗。它可以與USB記憶棒一起使用。

+0

謝謝,它解決了我的問題。 – fz300

相關問題