zoukankan      html  css  js  c++  java
  • C#上使用DllImport方式加载封装好的.dll动态库

    工具:vs2010

    语言:c#

    库文件:HCNetSDK.dll

    问题:

    1、HCNetSDK.dll 找不到指定的模块

    2、HCNetSDK.dll 试图加载格式不正确的程序

    由于海康sdk是封装的动态链接库dll库的形式,所以c#中使用比较麻烦的,海康demo使用的是动态加载,直接直接使用dll文件,
    使用 [DllImport(@"....inHCNetSDKHCNetSDK.dll")],需using System.Runtime.InteropServices;

    问题一:

    方案、将HCNetSDK.dll文件放在项目的bin目录下,也可以解决,安上面的路径是在bin目录,不要放在二级目录。


    问题二:

    方案:由于库与选择编译的平台不匹配导致,加载格式不正确。可以选中项目,右击,点击属性,在生成页,目标平台 选项,选择你是x64还是x86

    海康的sdk动态链接库dll只能用于windows的应用程序中,在WinForm程序中按照上述的方法已经验证成功,在Windows服务上使用时海康的dll文件会造成服务执行失败,此时需在winform上封装生成dll,将winform上的dll添加引用到service上,将海康的dll放入到bin目录下,服务既可执行。

    在web的应用程序中需使用高版本的vs在工具中进行设置

  • 相关阅读:
    NSURLSession 网络请求
    NSData 数据
    NSStream文件流
    NSFileManager文件管理
    NSCache 缓存
    NSUserDefaults数据存储
    NSKeyedArchiver数据归档
    子线程定时器的创建
    NSEnumerator迭代器
    NSDate 时间
  • 原文地址:https://www.cnblogs.com/luckys/p/15133482.html
Copyright © 2011-2022 走看看