Команда SYNCHRONIZE BUFFER
Команда SYNCHRONIZE BUFFER служит для обеспечения набора средств, гарантирующих, что вывод данных на печать был успешно выполнен до того, как связь между инициатором (профаммой) и адресатом (принтером) была разорвана.
Описание команды.
- Байт 0
В байт следует поместить код команды SYNCHRONIZE BUFFER, равный 10h.
- Байт 1
Состоит из двух частей. В первую часть (биты 7—5) помещают логический номер устройства (ЛНУ). В данное время этот параметр не используется и оставлен ради совместимости с предыдущими стандартами интерфейса SCSI, поэтому сюда следует записать нулевое значение. Вторая часть (биты 4—0) зарезервирована и не используется.
- Байты с 2 по 4
Зарезервированы и не используются.
- Байт 5
Служебный байт, завершающий команду. Не используется.
Когда все данные, находящиеся в буфере устройства (принтера), напечатаны, байт статуса после выполнения этой команды будет хранить значение SSCOMP, иначе говоря, команда завершится с ошибкой, которую необходимо будет обработать. Использование команды MODE SELECT позволит дополнительно проконтролировать такую ситуацию. Кроме того, поле SRB_TargStat структуры SRB_Execscsicmd будет хранить значение выполненной операции: STATUS_GOOD (операция успешно выполнена) или STATUS_CHKCOND (произошла ошибка). Приведем примеры работы с командой SYNCHRONIZE BUFFER. Напишем функцию, которая поможет гарантированно вывести на печать текущие данные (листинг 8.11).
Листинг 8.11. Пример использования команды SYNCHRONIZE BUFFER на Visual C++
На языке Visual Basic пример аналогичной функции будет выглядеть так, как показано в листинге 8.12.
Листинг 8.12. Пример использования команды SYNCHRONIZE BUFFER на Visual Basic
Как видно из примеров, работа с командой SYNCHRONIZE BUFFER не должна вызвать каких-либо затруднений. Этой командой можно завершить описание управляющих команд SCSI, поддерживающих принтеры.
2021-04-01
Google сообщил о запуске проекта Dunant
Проект Dunant, начатый в 2018 году, был запущен в эксплуатацию. Трансатлантический интернет-кабель соединяет США и континентальную Европу. Общая протяженность...
подробнее2020-04-06
Новшества в обновленной Windows 10
Корпорация Microsoft завершила разработку обновления, в котором добавлено множество функций. Обновление содержит как доработку уже имеющихся систем, так...
подробнее