1

我正在尝试创建一个从摩托罗拉 LS2208 扫描仪读取条形码的 .NET 应用程序。

不幸的是,当我尝试初始化PosExplorer对象时,应用程序在开始时崩溃

private void Form1_Load(object sender, EventArgs e)
{
    explorer = new PosExplorer(this);
}

这是它生成的异常:

Microsoft.PointOfService.dll 中的 System.TypeInitializationException'

我在使用 .NET 4.5 的 Windows 10 PC 上运行它,相同的项目在 Windows 7 PC 上运行良好。

W10 上的 POS 1.14 有问题吗?

我已经尝试将其添加到我的 appconfig 文件中,但出现了同样的问题:

<configuration>
  <runtime>
   <NetFx40_LegacySecurityPolicy enabled="true"/>
  </runtime>
</configuration>
4

2 回答 2

1

Windows 10 中内置的可能是 .NET 4.6 或更高版本。
最新的 Windows 10 1709 将是 .NET 4.7.1。

请尝试两者兼得。Windows7 和 Windows10 .NET 4.6 或更高版本(最新 4.7.1)。
然后,请更改应用程序的属性。该版本的项目,重建和测试。

顺便说一句: POS for .NET
的最新版本是 1.14.1。您还应该刷新这个。
在POS for.NET 1.14.1的SDK中包含的示例应用程序项目中,即使在MainForm.cs中进行了与问题类似的处理,也没有问题。

环境:
Windows10 Professional 64bit Version 1709
POS for.NET 1.14.1
Visual Studio Community 2017 Version 15.5.2
.NET Framework 版本从4到4.7.1 安装开发工具。

示例应用程序目标框架:
原始:4.0 客户端配置文件
更改:4.7.1

两个目标版本号在我的测试中都有效。

于 2018-01-06T01:00:31.280 回答
0

我能够通过创建一个新项目来解决我的问题。我最初在 Windows 7 中创建了旧应用程序,所以发生了一些奇怪的事情,使其无法在 W10 上运行。真的不知道会发生什么,我只是在 W10 上重新创建了该项目,现在相同的代码在两个系统上都可以正常运行。

于 2018-01-06T11:51:23.260 回答