Jump to content

PRTPORT: Difference between revisions

From EDM2
Created page with "Information about BIDI capabilities of the port, returned by the BIDI_Q_PORT command. If the ulpszProtocol parameter in the PRTPORT data structure is returned, it will be us..."
 
Ak120 (talk | contribs)
mNo edit summary
 
Line 1: Line 1:
Information about BIDI capabilities of the port, returned by the BIDI_Q_PORT command.  
Information about BIDI capabilities of the port, returned by the BIDI_Q_PORT command.


If the ulpszProtocol parameter in the PRTPORT data structure is returned, it will be used as the protocol converter for the given printer. If ulpszProtocol is null and ulBidiType bit 0 is clear, the spooler will attempt to fill in the protocol based on the ulpszDeviceID returned by the port driver.  
If the ulpszProtocol parameter in the PRTPORT data structure is returned, it will be used as the protocol converter for the given printer. If ulpszProtocol is null and ulBidiType bit 0 is clear, the spooler will attempt to fill in the protocol based on the ulpszDeviceID returned by the port driver.


==Example Code==
<PRE>
<PRE>
typedef struct _PRTPORT {
typedef struct _PRTPORT {
   ULONG     flBidiCapabilities; /* Defines printer capabilities of the port. */
   ULONG   flBidiCapabilities; /* Defines printer capabilities of the port. */
   ULONG     flBidiProtocol;     /* BIDI software protocol types supported. */
   ULONG   flBidiProtocol;     /* BIDI software protocol types supported. */
   ULONG     ulPortType;         /* Medium used to communicate with the printer. */
   ULONG   ulPortType;         /* Medium used to communicate with the printer. */
   ULONG     ulpszProtocol;       /* Offset to the name of the default BIDI protocol to be used for this printer. */
   ULONG   ulpszProtocol;     /* Offset to the name of the default BIDI protocol
   ULONG     ulpszDeviceID;       /* Device identifier returned by the printer hardware, as defined by the P1284 specification. */
                                to be used for this printer. */
   ULONG     ulBidiLevel;         /* Version level of the protocol type being used. */
   ULONG   ulpszDeviceID;     /* Device identifier returned by the printer hardware,
   ULONG     flPrinterStatus;     /* Current status of the attached printer. */
                                as defined by the P1284 specification. */
   ULONG     ulAdapterLevel;     /* Level of protocol used by the adapter. */
   ULONG   ulBidiLevel;       /* Version level of the protocol type being used. */
   ULONG     ulMaxSendSize;       /* Port driver's maximum send packet size for messages or data to the printer. */
   ULONG   flPrinterStatus;   /* Current status of the attached printer. */
   ULONG     ulMaxReceiveSize;   /* Port driver's maximum receive packet size for messages from the printer. */
   ULONG   ulAdapterLevel;     /* Level of protocol used by the adapter. */
   ULONG     ulMaxHeldResponses; /* Maximum number of printer messages held, waiting for BIDI_WAIT_ALERT to read them. */
   ULONG   ulMaxSendSize;     /* Port driver's maximum send packet size for messages or
                                data to the printer. */
   ULONG   ulMaxReceiveSize;   /* Port driver's maximum receive packet size for messages
                                from the printer. */
   ULONG   ulMaxHeldResponses; /* Maximum number of printer messages held, waiting
                                for BIDI_WAIT_ALERT to read them. */
} PRTPORT;
} PRTPORT;


typedef PRTPORT *PPRTPORT;
typedef PRTPORT *PPRTPORT;
</PRE>
</PRE>


[[Category:Data type]]
[[Category:Data type]]

Latest revision as of 05:58, 13 February 2020

Information about BIDI capabilities of the port, returned by the BIDI_Q_PORT command.

If the ulpszProtocol parameter in the PRTPORT data structure is returned, it will be used as the protocol converter for the given printer. If ulpszProtocol is null and ulBidiType bit 0 is clear, the spooler will attempt to fill in the protocol based on the ulpszDeviceID returned by the port driver.

typedef struct _PRTPORT {
  ULONG   flBidiCapabilities; /* Defines printer capabilities of the port. */
  ULONG   flBidiProtocol;     /* BIDI software protocol types supported. */
  ULONG   ulPortType;         /* Medium used to communicate with the printer. */
  ULONG   ulpszProtocol;      /* Offset to the name of the default BIDI protocol
                                 to be used for this printer. */
  ULONG   ulpszDeviceID;      /* Device identifier returned by the printer hardware,
                                 as defined by the P1284 specification. */
  ULONG   ulBidiLevel;        /* Version level of the protocol type being used. */
  ULONG   flPrinterStatus;    /* Current status of the attached printer. */
  ULONG   ulAdapterLevel;     /* Level of protocol used by the adapter. */
  ULONG   ulMaxSendSize;      /* Port driver's maximum send packet size for messages or
                                 data to the printer. */
  ULONG   ulMaxReceiveSize;   /* Port driver's maximum receive packet size for messages
                                 from the printer. */
  ULONG   ulMaxHeldResponses; /* Maximum number of printer messages held, waiting
                                 for BIDI_WAIT_ALERT to read them. */
} PRTPORT;

typedef PRTPORT *PPRTPORT;