Проверка, доступно ли устройство без всяких окошек об ошибкахDelphi , Файловая система , Диски
Автор: Mystic { **** UBPFD *********** by delphibase.endimus.com **** >> Проверка, доступно ли устройство без всяких окошек об ошибках. Зависимости: Windows Автор: Mystic, mystic2000@newmail.ru, ICQ:125905046, Харьков Copyright: Mystic Дата: 6 марта 2003 г. ***************************************************** } function IsDiskInDrive(Drive: string): Boolean; var ErrMode: Cardinal; VolName: array[0..255] of Char; FS: array[0..255] of Char; MaxComSize: Cardinal; Flags: Cardinal; begin ErrMode := SetErrorMode(SEM_FAILCRITICALERRORS); try Result := GetVolumeInformation(PChar(Drive), VolName, SizeOf(VolName), nil, MaxComSize, Flags, FS, SizeOf(FS)); finally SetErrorMode(ErrMode); end; end; Пример использования: if not IsDiskInDriver('A:') then raise Exception.Create('А дискеты-то нет :('); Переведенный текст: Код - функция Delphi под именем Разбор кода:
Пример использования демонстрирует, как использовать эту функцию:
Это код проверяет доступность диска 'A:'. Если он недоступен, то возникает исключение с сообщением о том, что дискет не доступна. В целом, эта функция предоставляет удобный способ проверки доступности конкретного диска в Windows-окружении. Альтернативное решение: Если вам нужно обрабатывать ошибки differently или хотите иметь больше гибкости, вы можете рассмотреть использование блоков
В этом модифицированном варианте вы можете поймать конкретные исключения (например, Статья 'Проверка, доступно ли устройство без всяких окошек об ошибках' описывает функцию IsDiskInDrive для проверки доступности диска на конкретном устройстве в Windows. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |