Udostępnij przez


Konstruowanie zapytania schematu komunikacji bidi

Podczas konstruowania zapytania schematu komunikacji bidi należy pamiętać o trzech kwestiach:

  1. Zapytanie musi zaczynać się od Printer właściwości , która musi być poprzedzona znakiem ukośnika odwrotnego (\).

  2. Wszystkie właściwości zapytania muszą być oddzielone znakiem kropki (.).

  3. Jeśli zapytanie zawiera wartość, wartość musi być oddzielona od jej właściwości nadrzędnej dwukropkiem (:).

Przykładowe żądanie i odpowiedź

Poniżej przedstawiono przykłady formatu zapytania XML i odpowiedzi wymaganego przez interfejsy komunikacyjne bidi, a w szczególności przez interfejs COM IBidiSpl2. Pierwszy przykład to żądanie zawierające dwa schematy. Pierwszy schemat określa, czy jest zainstalowana jednostka dwudupleksowa. Drugi schemat określa wartości skojarzone z dyskiem twardym.

<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>

Następny przykład to zestaw typowych odpowiedzi ze schematów w pierwszym przykładzie. Pierwsza odpowiedź wskazuje, że moduł drukowania dwustronnego jest zainstalowany. Pozostałe odpowiedzi wskazują, że jest zainstalowany dysk twardy i że jego pojemność wynosi 20 MB, z czego 10 MB jest niewykorzystane.

<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>

Dodatkowe przykłady zapytań

Poniżej znajduje się lista typowych zadań i skojarzonych zapytań:

Ustal, czy jest zainstalowana jednostka dwudupleksowa.

\Printer.Configuration.DuplexUnit:Installed

Określ, które pojemniki wejściowe są obecne.

\Printer.Layout.InputBins

Określ wszystkie informacje o pojemniku wejściowym Tray1.

\Printer.Layout.InputBins.Tray1

Ustal, czy jest zainstalowany pojemnik wejściowy Tray1.

\Printer.Layout.InputBins.Tray1:Installed

Określ poziom czarnego tonera zidentyfikowanego przez [Name] Blk3E.

\Printer.Consumables.Blk3E:Level

Określ poziom oleju bezpiecznika.

\Printer.Consumables.FuserOil:Level