2016-03-30 4 views
3

Ich habe Bixolon BCD-1000 OPOS Driver installiert.Es kann ASCII-Zeichen drucken, aber ich muss kyrillische Zeichen drucken. Wenn ich versuche, CharacterSet 437 (Default Charset) auf 999 (UNICODE) zu ändern, wird eine Fehlermeldung ausgegeben. [Fehlermeldung] [1]Microsoft POS C# -CharacterSet-Attribut kann nicht festgelegt werden.

 public void DisplayStringOnPort(string line) 
    { 
     PosExplorer posExplorer = new PosExplorer(); 
     DeviceInfo receiptPrinterDevice = posExplorer.GetDevices()[0]; 
     var list = posExplorer.GetDevices(); 
     foreach(DeviceInfo x in list) 
     { 
      if(x.ServiceObjectName.Equals("BCD-1000")) 
      { 
       receiptPrinterDevice = x; 

      } 
     } 
     LineDisplay printer = posExplorer.CreateInstance(receiptPrinterDevice) as LineDisplay; 
     printer.Open(); 
     printer.Claim(1000); 
     string str = "Кирилица"; 
     printer.CharacterSet = 999; // Unicode Fault Message 
     printer.DeviceEnabled = true; 
     printer.DisplayTextAt(2, 1, text); 
     printer.Close(); 
    } 

Wie kann ich diese Situtation überwinden? Danke

+0

sehr nette Frage: P – albatross

Antwort

0

Die CharacterSet-Eigenschaft kann nur auf den numerischen Wert des in der CharacterSetList-Eigenschaft enthaltenen Werts festgelegt werden.

Wenn der Wert der Eigenschaft CharacterSetList nicht 999 enthält, können Sie nicht die CharacterSet Eigenschaft auf 999.

überprüfen Sie bitte die Spezifikation von CharacterSetList Eigentum von Bixolon BCD-1000 OPOS-Treiber.

Zusätzlich ist 999 der Wert des ANSI-Zeichensatzes. Der Wert von UNICODE ist 997.

Und vielleicht ist es besser, die CharacterSet-Eigenschaft nach dem Festlegen der DeviceEnabled-Eigenschaft auf true festzulegen.