Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Usbprint.sys, samen met USBMON, biedt een interface die vergelijkbaar is met die van parallelle printers. In veel gevallen is het mogelijk dat één printerstuurprogramma of taalmonitor correct werkt op zowel parallelle als USB-printers zonder aanpassingen. Als een taalmonitor alleen gebruikmaakt van de functies WritePort en ReadPort en de IOCTL_PAR_QUERY_DEVICE_ID aanvraag, is deze overdraagbaar tussen USB en parallelle printers.
In sommige gevallen kan het nodig zijn voor een taalmonitor om leverancierspecifieke aanvragen te doen aan een printer om te profiteren van speciale printerfuncties. Gebruik hiervoor IOCTL_USBPRINT_VENDOR_SET_COMMAND en IOCTL_USBPRINT_VENDOR_GET_COMMAND. Houd er echter rekening mee dat met behulp van deze IOCTL's een taalmonitor wordt weergegeven die niet compatibel is met de parallelle poortmonitor.
Taalmonitors hebben normaal gesproken geen toegang tot een apparaatgreep voor de printer die ze beheren. Bovendien hebben ze een poortnaam die wordt opgegeven door de poortmonitor, die zich bevindt tussen de taalbeheerder en de busdriver (in dit geval Usbprint.sys). Zie Taal- en poortmonitorinteractie voor meer informatie. Het ontbreken van een apparaatgreep voorkomt dat taalmonitoren IOCTLs voor apparaatbusstuurprogramma's rechtstreeks aanroepen. Om deze beperking te verhelpen, implementeert USBMON de GetPrinterDataFromPort-API , waarmee taalmonitors IOCTLs via USBMON naar USBPRINT kunnen uitgeven.
De USB-afdrukstack deelt de volgende API's en IOCTL met de parallelle afdrukstack:
De volgende IOCTL's zijn specifiek voor de USB-afdrukstack:
IOCTL_USBPRINT_VENDOR_GET_COMMAND
IOCTL_USBPRINT_VENDOR_SET_COMMAND
Opmerking
Usbprint.sys biedt geen mechanisme voor het verkrijgen van descriptors van het apparaat, noch voor het rechtstreeks bewerken van USB-pijpen.