Мне хотелось бы поработать с виртуальным портом USB принтера через CreateFile, ReadFile, WriteFile (для передачи данных в принтер, давать команду на печать, очищать буфер принтера, получать его статус, подавать команды Printer Page Description and Markup Languages и др.). У меня виртуальный порт принтера HP LaserJet 1020 в системе обозначен как USB001. Я пробовал использовать название порта в CreateFile, ничего не получилось. Подскажите, пожалуйста, как работать с виртуальным портом принтера. В интернете ничего не нашел, только по поводу виртуальных COM портов. Потом хотелось бы разобраться с виртуальным портом сканера.
А разница... виртуальный он или нет? Один фиг для системы это ДЕВАЙС! Так что, скорее всего, не правильно открываешь!
Хотя, сомневаюсь, что ЮСБ доступен именно через это имя, если вообще доступен, для открытия через CreateFile
Хотелось бы все-таки узнать, как "правильно" открывать виртуальный порт USB-принтера. Я пробовал как \\\\.\\USB001, и менял количество обратных слешей, ничего не получается. Видимо, обращение к виртуальному порту осуществляется как-то по-другому.
Обращатся можно к ДЕВАЙСУ а не к порту! к порту можно из ринг0 посредствам in/out! А через CreateFile можно только ДЕВАЙС открыть! Потому ищи имя девайса, которое висит на этом порту!
Знать бы, как его найти. Принтер в панели управления имеет имя HP Laser Jet 1020, по этому имени ничего открыть не удается.
В диспетчере уст-тв у каждого девайса в Properties->Details есть св-во Physical Device Object Name. Попробуй его.
Единственное что я нашел - это при включении принтера в Диспетчере устройств в разделе Контроллеры USB появляется Поддержка USB принтера. Там в сведениях есть различные параметры, многие из них (различные коды) я попробовал, ничего не получилось.
обмен urb-пакетами. В них пакуешь scsi-пакеты. как этим пользоваться - от части описано в мсдн и ддк. и если не путаю - дрова усб шины не поддерживают рид врайт - т.к. они не знают кому там рид, а кому врайт - это уже функционал драйвера конкретного устройства. можно почитать Агуров Интерфейс усб - тоже есть неточности, но сойдет для общего развития.