Chào mọi người. Em có chương trình viết byte vào Volume trên Windows, sử dụng đối tượng BufferedWrite
(fw
). Em có test khi ghi byte vào file thì mọi thứ đều ổn. Nhưng khi ghi vào Volume thì sẽ bị lỗi. Ở phần code này, lỗi xảy ra tại lệnh fw.close()
, em nghĩ là chương trình bị lỗi trong quá trình ghi byte từ buffer
vào ô nhớ. Em xin hỏi mọi người lỗi là do gì và cách khắc phục a!
Code:
import os
import io
if __name__ == "__main__":
# Open directory with mode Read Only and Binary
fd = os.open("\\\\.\D:", os.O_WRONLY | os.O_BINARY)
fw = os.fdopen(fd, mode = "wb")
fw.seek(256 * 2 , io.SEEK_SET)
fw.write(b'\x00')
# Find how many sectors in a cluster
# Closer the file
fw.close()
Lỗi:
Traceback (most recent call last):
File "đường dẫn", line 17, in <module>
fw.close()
OSError: [Errno 22] Invalid argument