我必须将一个非常非常简单的程序从Vb转换为C#。 Vb有这些参考
从看到这里,如果我没有弄错,那些应该是管理dll。如果我使用dumpbin.exe程序执行here过程,我会得到相同的结果。
所以一切都应该没问题。
但当我这样做CWorkpiece instance = new CWorkpiece();
时,我收到以下错误
那说我认为也许我做了错误的调查,但添加以下几行并没有帮助
[DllImport("C:\\Temp\\1\\Okuma.CLDATAPI.dll")]
public static extern int CWorkpiece();
所以简而言之,问题都与那些无法找到的dll有关 预先感谢您的任何帮助 帕特里克
答案 0 :(得分:1)
使用.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库有几个依赖项,包括:
获取API安装光盘的副本;无论是装有Okuma机器的光盘,还是通过Okuma经销商的新版本。
在开发环境中安装THINC API的开发版本。
请注意,除非您的环境属于以下某种情况,否则您将无法Init()
或调用任何其他API函数: