Проверьте, является ли дисковод записи Windows API Функция [Закрыто

StackOverflow https://stackoverflow.com/questions/3646538

Вопрос

Здравствуйте, есть ли функция API Windows, которая вернет, если бы диск пишется. Иногда привод виден под накопителями, но при попытке программирования написать к нему, он дает вам ошибку MSG Box, который зависает приложение, пока пользователь не нажимает кнопку OK. Есть ли встроенные функции, которые проверили, проверял, будет ли дисковод с записью без надоемого ящика ошибок?

Я уже попробовал trycopy и возвращает ту же ошибку msgbox :(

Спасибо!

Это было полезно?

Решение

Попробуйте позвонить SetErrorMode( SEM_FAILCRITICALERRORS) Чтобы предотвратить появление сообщения об ошибках.

http://msdn.microsoft.com/en-us/library/ms680621(vs.85).aspx.

Другие советы

Вы можете установить ссылку на время выполнения сценариев Microsoft.

Затем вы можете использовать код типа:

Dim FSO as New FileSystemObject
Dim clsDrive as Scripting.Drive

Set clsDrive=FSO.GetDrive("C")

Класс привода имеет свойство FreeSpace, которое будет равно нулю, если привод не записан.

Более того, есть скрипты. Класс Folder Class, который вы можете использовать с помощью FSO. GetFolder (), который имеет свойство атрибутов, который состоит из флагов типа Fileattribute. Вы можете использовать код, как

clsFolder.Attributes And FileAttribute.Readonly Чтобы проверить на err ... Readonlyness ;-)

Вызов GetvolumeInformation () и проверить FILE_READ_ONLY_VOLUME В параметре возвращенных флагов.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top