共用方式為


2.2.4.67.1 Request

 SMB_Parameters
   {
   UCHAR  WordCount;
   Words
     {
     USHORT SetupLength;
     USHORT Mode;
     }
   }
 SMB_Data
   {
   USHORT ByteCount;
   Bytes
     {
     UCHAR       BufferFormat;
     SMB_STRING  Identifier[];
     }
   }
  

SMB_Header:

TID (1 byte): This field MUST represent a printer share (print queue).

UID (1 byte): This field MUST be valid within the SMB session, and the UID MUST have the appropriate permissions to create new print jobs.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

SMB_Parameters

...

SMB_Data (variable)

...

SMB_Parameters (5 bytes):


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

WordCount

Words

...

WordCount (1 byte): This field MUST be 0x02.

Words (4 bytes):


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

SetupLength

Mode

SetupLength (2 bytes): Length, in bytes, of the printer-specific control data that is to be included as the first part of the spool file. The server MUST pass this initial portion of the spool file to the printer unmodified.

Mode (2 bytes): A 16-bit field that contains a flag that specifies the print file mode.

Value

Meaning

0

Text mode. Starting SetupLength bytes into the spool file, the server MAY modify character sequences to normalize them for printer output. For example, the printer can convert tab characters in the spool file to sequences of spaces, or normalize end-of-line sequences.

1

Binary mode. The server MUST NOT modify the contents of the spool file before sending it to the printer.

SMB_Data (variable):


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

ByteCount

Bytes (variable)

...

ByteCount (2 bytes): This field MUST be greater than or equal to 0x0002.

Bytes (variable):


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

BufferFormat

Identifier (variable)

...

BufferFormat (1 byte): This field MUST be 0x04, representing an ASCII string.

Identifier (variable): A null-terminated string containing a suggested name for the spool file. The server can ignore, modify, or use this information to identify the print job.<126>