妳只指定了FILE_SHARE_READ,這樣Windows會認為妳不允許其他程序進行寫入、刪除操作,但是此時有應用程序在占用了設備,所以CreateFile會失敗。
正確做法是:
hDevice = CreateFile("\\\\.\\E:", GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE, NULL,OPEN_EXISTING, 0, NULL);
經過測試,不會報錯
妳只指定了FILE_SHARE_READ,這樣Windows會認為妳不允許其他程序進行寫入、刪除操作,但是此時有應用程序在占用了設備,所以CreateFile會失敗。
正確做法是:
hDevice = CreateFile("\\\\.\\E:", GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE, NULL,OPEN_EXISTING, 0, NULL);
經過測試,不會報錯