0

我正在尝试使用 .NET POS 打印票,但我无法获得默认打印机。

 PosPrinter defaultPrinter = await PosPrinter.GetDefaultAsync();

我也试过这个:

string deviceSelector =  PosPrinter.GetDeviceSelector();
PosPrinter printer = await PosPrinter.FromIdAsync(deviceSelector);

我将热敏打印机配置为默认值。

4

1 回答 1

0

您是否尝试过使用 PosExplorer 和打印机名称的方式?片段:

public PosPrinter GetPrinterByName(System.Windows.Forms.Form mainForm, string printerName)
{
  PosPrinter       printer  = null;
  PosExplorer      explorer = new PosExplorer(mainForm);
  DeviveCollection printers = explorer.GetDevices(DeviceType.PosPrinter);

  if (printers != null && printers.Count > 0)
  {
    for (int i = 0; i < printers.Count; i++)
    {
      if(0 == string.Compare(printerName, printers[i].ServiceObjectName))
      {
        printer = printers[i];
        break;
      }
    }
  }

  return printer;
}
于 2017-11-28T07:37:09.460 回答