当前位置: 首页 > article >正文

【在.net6和WPF框架下进行海康SDK开发】(一)如何引用Dll

        最近有个上位机项目,需要将海康VisionMaster的部分功能嵌入到统一的界面。项目使用WPF+dotNet6开发,UI库使用HandyControl。

        先说下需求,在某个TabItem内嵌入一个UserControl,UserContr内嵌入VisionMaster运行界面。

        本以为按照海康的教程或样例,一步步做下去,是一件很轻松就能完成的事情,结果完全和想象不一样。

        首先遇到的是引用Dll的问题!

        按照海康的教程,用下图的工具, 据说是能自动生成引用。

        然而,虽然上面显示写入完成,但是打开项目,点开“依赖项”一看,生成了个寂寞。

        因为海康的Demo都是.netFramework的,所以,猜测是不支持.net6? 那好办,再建一个.netFramework的项目,重新生成引用,确实可以!一下进来这么多dll!

        那么.net6项目就不能用了吗?先观察一下,.netFramework项目中的引用的dll是存在哪里?

        可以看到,这个dll并没有在项目文件夹下,而是在VisionMaster的安装目录下,也就是说前面生成引用的小工具,其实只是在项目的csproj文件内写入的这些引用文件的路径而已,打开项目文件,印证了这一想法。

 <ItemGroup>
    <Reference Include="Apps.ColorFun, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cfdb8c430127f15b, processorArchitecture=MSIL">
      <Private>False</Private>
    </Reference>
    <Reference Include="VM.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=61600122bc9264b9, processorArchitecture=MSIL">
      <Private>False</Private>
    </Reference>
    <Reference Include="VM.PlatformSDKCS, Version=1.0.0.0, Culture=neutral, PublicKeyToken=c1484a72052ee3d4, processorArchitecture=MSIL">
      <Private>False</Private>
    </Reference>
    <Reference Include="VMControls.BaseInterface, Version=1.0.0.0, Culture=neutral, PublicKeyToken=14444b8df74b6e6a, processorArchitecture=MSIL">
      <Private>False</Private>
    </Reference>
    <Reference Include="VMControls.WPF.Release, Version=1.0.0.0, Culture=neutral, PublicKeyToken=fdd2c8be7291c30c, processorArchitecture=MSIL">
      <Private>False</Private>
    </Reference>

        对于.net6项目,由于csproj文件的格式不一样了,所以写不进来也很正常。那么,在.netCore项目,怎么引用这些dll呢?其实,只要在“依赖项”上单击鼠标右键,弹出菜单前面三项,任选一项,在弹出的“引用管理器”对话框中,单击左侧“浏览”,再点右下角“浏览”按钮,去到VisionMaster的目录里,找到对应的dll引用即可。

        添加部分引用后的项目如图:

至此,第一个难题暂时解决。

下一篇,将遇到一个更棘手的问题,VisionMaster和HandyControl的冲突!


http://www.kler.cn/a/322795.html

相关文章:

  • 动态规划之股票系列
  • 基于Springboot+Vue的中国蛇类识别系统 (含源码数据库)
  • PCL 三维重建 耳切三角剖分算法
  • 论文笔记 SuDORMRF:EFFICIENT NETWORKS FOR UNIVERSAL AUDIO SOURCE SEPARATION
  • 魔方和群论
  • 深入List集合:ArrayList与LinkedList的底层逻辑与区别
  • Llama 3.2 使用指南:工作原理及示例
  • 在 Delphi BSD11中安装 DCU 格式的第三方组件库
  • python数据分析与可视化需要掌握哪些知识点
  • 【资源一号04A卫星(中巴地球资源卫星04A星)】
  • 大数据新视界 --大数据大厂之数据压缩算法比较与应用:节省存储空间
  • 中国新媒体联盟与中运律师事务所 建立战略合作伙伴关系
  • 江协科技STM32学习- P19 TIM编码器接口
  • 汇编第二次作业
  • React入门准备
  • ppython 实现k nearest neighbours k最近邻分类算法
  • distribution shifts 和图回归任务
  • c++学习笔记(47)
  • 搜维尔科技:测试Xsens功能,通过空中移动在弹簧地板上进行捕捉
  • 直播加速所用的网络协议与网速比我们平常使用的有什么特殊
  • plt绘图日常训练
  • RP2040 C SDK GPIO和IRQ 唤醒功能使用
  • 自定义 Git
  • 基于SpringBoot+Vue的旅游攻略平台管理系统
  • 敏感字段加密 - 华为OD统一考试(E卷)
  • webshell-HTTP常见特征