2016-03-30 4 views
3

Установлен Bixolon BCD-1000 OPOS Driver. Он может печатать символы ASCII, однако мне приходится печатать кириллические символы. Когда я пытаюсь изменить CharacterSet 437 (по умолчанию Charset) до 999 (UNICODE), он возвращает сообщение об ошибке. [Fault Message] [1]Невозможно установить атрибут Microsoft POS C# CharacterSet.

 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(); 
    } 

Как я преодолеть это situtation? Thanks

+0

очень хороший вопрос: P – albatross

ответ

0

Свойство CharacterSet может быть установлено только на числовое значение значения, содержащегося в свойстве CharacterSetList.

Если значение свойства CharacterSetList не содержит 999, вы не можете установить свойство CharacterSet 999.

Пожалуйста, проверьте спецификацию CharacterSetList имущества Bixolon BCD-1000 OPOS драйвер.

Кроме того, 999 - это значение набора символов ANSI. Значение UNICODE равно 997.

И, возможно, лучше установить свойство CharacterSet после установки для свойства DeviceEnabled значения true.