为什么 SFB65001调用C# 或VB DLL时返回值为 0x8105″E_LOAD_LIBRARY_FAILED” ?


n

说明:
WinAC ODK V4.2 支持在Visual Studio 2005 或2008开发环境下使用 C#或 Visual Basic 开发。
WinAC ODK V4.2的自定义代码扩展接口可以直接调用DLL类型的应用程序。n

使用C#或 Visual Basic 开发时,“ODK 应用向导” 创建两种不同的DLL:n

  • C++ DLL,必须用STEP7程序来执行。n
  • C#或 Visual Basic DLL,被C++ DLL 调用,而且可在用户程序中创建。

步骤:

如果SFB65001调用C# 或VB DLL时返回值为 0x8105"E_LOAD_LIBRARY_FAILED",建议采取如下步骤除错。

步骤 具体操作
1 以“Release”方式编译项目。
2 复制新创建的DLL到目标系统。
3 检查如下路径是否一致: n

  • 保存DLL的路径。n
  • S7程序中的SFB65001功能块中的路径。
4 再次使用“Regasm”来注册DLL,具体操作如下: n

  1. 按路径“开始> 所有程序>附件 >命令提示符”打开DOS窗口。n
  2. 根据编程语言输入相应的命令,如下:
    C#:
    "C:WINDOWSMicrosoft.NETFrameworkv2.0.50727regasm.exe" <Path to the DLL><Project_Name>_CS.dll /codebase
    VB:
    "C:WINDOWSMicrosoft.NETFrameworkv2.0.50727regasm.exe" <Path to the DLL><Project_Name>_VB.dll /codebasen
  3. 按回车键确认。n
  4. 接着出现消息"Types registered successfully "。忽略所有警告。

n

提示:
在PC上注册 C#或 VB DLL 前,必须先安装.NET 2.0 Framework 。
更多信息参见WinAC ODK V4.2手册,章节 2.2.2.6 "Developing C# or VB CCX applications",条目号 35948966

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc333856.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月5日
下一篇 2021年4月12日

相关推荐

发表回复

登录后才能评论