C# 微软服务点赢得';不检测打印机

C# 微软服务点赢得';不检测打印机,c#,printing,point-of-sale,C#,Printing,Point Of Sale,一些背景:我正在使用一台通过USB连接的Epson TM-T88V收据打印机,安装了Epson OPOS for.NET 1.12.20版。它被检测到,可以从设备管理器打印测试表 我的问题始于Microsoft Point of Service。它似乎不想连接到打印机,甚至不想承认它的存在。配置xml文件已自动填充(我想是否正确?),如下所示: <?xml version="1.0"?> <PointOfServiceConfig Version="1.0"> <

一些背景:我正在使用一台通过USB连接的Epson TM-T88V收据打印机,安装了Epson OPOS for.NET 1.12.20版。它被检测到,可以从设备管理器打印测试表

我的问题始于Microsoft Point of Service。它似乎不想连接到打印机,甚至不想承认它的存在。配置xml文件已自动填充(我想是否正确?),如下所示:

<?xml version="1.0"?>
<PointOfServiceConfig Version="1.0">
  <ServiceObject Type="PosPrinter" Name="TM-T88V">
    <Device HardwarePath="TM-T88V" Enabled="yes">
      <LogicalName Name="EpsonReceiptPrinter" />
      ...
      </Device>
  </ServiceObject>
</PointOfServiceConfig>

...
但是,当我试图通过posdm.exe“listdevices”访问它时,它不会在现有的物理打印机上读取,只列出模拟器。Posdm.exe显然正在使用这个文件,因为当我使用“adddevice”命令时,它被写入/读取

我对POS/OPOS编程相当陌生,但我也假设这就是为什么当我尝试使用PosExplorer通过C#访问打印机时,打印机未被检测到的原因


我有没有遗漏什么东西会使POS拒绝连接到我的设备?

经过大量的头痛和尝试,我找到了一种方法来实现这一点

首先,我偶然发现了这篇论坛帖子,它表明我目前使用的Epson OPOS驱动程序可能不支持Microsoft PoS 1.14。所以我卸载了它,并下载了Pos 1.12

第二,安装任何其他windows驱动程序似乎都能让windows控制设备并阻止任何其他应用程序使用它。因此,我卸载了默认的Epson驱动程序实用程序。这些智慧来自这里:

这两种变化的结合对我起了作用。然而,微软的PoS似乎相当挑剔,而且很多驱动程序都有很多不尽如人意的地方,所以这可能不是每个人都能找到的解决方案