CN3 条形码读取器和成像器在连接到互联网时出现故障

CN3 barcodereader and imager fails when connected to internet

我正在使用装有 windows mobile 5 的 intermec CN3 设备,并尝试使用条形码阅读器和成像器。

连接到 Internet 时找不到 itcscan.dll 和 imager.dll 文件。请注意,它们在未连接到互联网时也能完美运行。

条形码阅读器出现以下错误:"Cant find PInvoke DLL 'ITCScan.DLL'"。 这是我为 Imager 得到的错误:"Can not open Imager"。

网络上有很多关于找不到 pinvoke 错误的帖子,但 none 我发现的帖子中有一些是特定于连接到互联网的,这些帖子的人似乎没有成功即使离线。

他们在新陈述上失败了:

全局变量:Intermec.DataCollection.BarcodeReader barRead;

if (barRead == null)
{
    barRead = new Intermec.DataCollection.BarcodeReader();

成像器与它自己的全局变量相似

img = new Intermec.DataCollection.Imager(PictureImager, Imager.PictureResolutionSize.Sixteenth);

之后设置了一些设置,但在连接到 Internet 时它永远不会通过这些语句。

结果是内存问题。连接到互联网时,该设备占用了更多内存,这似乎使它超出了边缘。

首先将其带到边缘的问题是与设备本身上的 sql 服务器 ce 的连接。看起来最后一个 sql 连接永远不会离开内存,即使您关闭它并强制 gc.collect 也是如此。一个奇怪的解决方法是简单地关闭并重新打开然后再次关闭它以使最后一个连接在内存中非常小。

很确定这是 .Net 框架或 sql 服务器的错误。