构造双向通信架构查询
构造 bidi 通信架构查询时,需要记住三点:
查询必须以
Printer
属性开头,该属性前面必须有反斜杠字符 (\
) 。查询中的任何属性都必须用句点字符分隔 (
.
) 。如果查询包含值,则必须用冒号 (
:
) 将值与其父属性分开。
示例请求和响应
下面是 bidi 通信接口(特别是 IBidiSpl2 COM 接口)所需的 XML 查询和响应格式的示例。 第一个示例是包含两个架构的请求。 第一个架构确定是否安装了双工单元。 第二个架构确定与硬盘关联的值。
<bidi:Get xmlns:bidi="https://schemas.microsoft.com/windows/2005/03/printing/bidi">
<Query schema="\Printer.Configuration.DuplexUnit:Installed"/>
<Query schema="\Printer.Configuration.HardDisk"/>
</bidi:Get>
下一个示例是第一个示例中架构的一组典型响应。 第一个响应指示双工单元已安装。 其余响应指示已安装硬盘,其容量为 20 MB,其中 10 MB 未使用。
<bidi:Get xmlns:bidi="https://schemas.microsoft.com/windows/2005/03/printing/bidi">
<Query schema="\Printer.Configuration.DuplexUnit:Installed">
<Schema name="\Printer.Configuration.DuplexUnit:Installed">
<BIDI_BOOL>true</BIDI_BOOL>
</Schema>
</Query>
<Query schema="\Printer.Configuration.HardDisk">
<Schema name="\Printer.Configuration.HardDisk:Installed">
<BIDI_BOOL>true</BIDI_BOOL>
</Schema>
<Schema name="\Printer.Configuration.HardDisk:Capacity">
<BIDI_INT>20</BIDI_INT>
</Schema>
<Schema name="\Printer.Configuration.HardDisk:FreeSpace">
<BIDI_INT>10</BIDI_INT>
</Schema>
</Query>
</bidi:Get>
其他查询示例
下面是典型任务和相关查询的列表:
\Printer.Configuration.DuplexUnit:Installed
\Printer.Layout.InputBins
\Printer.Layout.InputBins.Tray1
\Printer.Layout.InputBins.Tray1:Installed
\Printer.Consumables.Blk3E:Level
\Printer.Consumables.FuserOil:Level