找不到Okuma THINC API依赖文件例外

问题描述 投票:1回答:1

我必须将一个非常非常简单的程序从Vb转换为C#。 Vb有那些参考enter image description here

从看到这里,如果我没有弄错,那些应该是管理dll。如果我使用dumpbin.exe程序执行here过程,我会得到相同的结果。

所以一切都应该没问题。但当我这样做CWorkpiece instance = new CWorkpiece();我得到以下错误

enter image description here

这告诉相关的dll不在正确的位置。但是文件是对的,它应该是enter image description here

那说我想也许我做了错误的调查,但添加以下几行并没有帮助

    [DllImport("C:\\Temp\\1\\Okuma.CLDATAPI.dll")]
    public static extern int CWorkpiece();

所以简而言之,问题都与那个无法找到的dll有关。提前感谢您提供任何帮助Patrick

c# dll okuma
1个回答
1
投票

Refer to Section "4.5.1.3.3.1 Missing library file" of the THINC API Installation Manual.

Ex Message

使用.NET THINC-API库开发的所有应用程序都需要包含具有自定义安装的THINC-API库的精确版本。使用应用程序编译的THINC-API库应与您的应用程序文件夹一起安装。

上面的错误消息显示在运行应用程序的文件夹中找不到名为Okuma.CLDATAPI.dll的THINC-API库。

解决方案:在您的应用程序中包含使用自定义安装程序编译的THINC-API库,并使用新设置重新安装应用程序。

是的,THINC API库是托管的.NET库。命令(CMD)API用VB编写,数据API用VC ++编写。根据您拥有的API版本,这些库可以使用.NET 1.1或4.0编写。所以你真的不应该试图Pinvoke他们。

您面临的真正问题是尝试在没有安装THINC API的环境中运行您的程序。是的,您拥有应用程序引用的库,但这还不够。

THINC API库有几个依赖项,包括:

  • okuma.flexnet.dll
  • Okuma.ApiLog.dll / Okuma.Api.LogService.dll
  • LDATAPI.dll / MDATAPI.dll / GDATAPI.dll
  • LCMDAPI.exe / MCMDAPI.exe / GCMDAPI.exe
  • PIODlib.dll
  • Softswitch.exe

Solution

  1. 获取API安装光盘的副本;要么是装有Okuma机器的光盘,要么是通过Okuma经销商的新版本。
  2. 在开发环境中安装THINC API的开发版本。

请注意,除非您的环境是以下之一,否则您将无法使用Init()或调用任何其他API函数:

  • 安装了CAPI Option和THINC API的实际Okuma机器
  • 像这样的“NC-Master”模拟器:P300A NC-Master Simulator
  • 或PC NC-Master,这是一个全软件模拟器。
© www.soinside.com 2019 - 2024. All rights reserved.