海康Visionmaster-环境配置:MFC 二次开发环境配置方法

1 新建 MFC 工程,拷贝 DLL:VM\VisionMaster4.0.0\Development\V4.0.0 \ComControl\bin\x64 下的所有拷贝到项目工程输出目录下,如下图所示,项目的输出路径是 Dll 文件夹。

2 通过配置 C++目录和链接器的方式配置 VM 环境

2.1 C++目录下添加附加包含目录.\Includes。

2.2 链接器下添加库目录.\Libraries\win64\C

2.3 链接器输入里的附加依赖项写入 VM 的算法依赖库 iMVS-6000PlatformSDK.lib

3 添加控件源文件至工程中,复制.\VisionMaster4.0.0\Development\V4.0.0\ComControls\Includes\VS2017(根据 VS 版本选择)下的控件源文件至工程目录下并引入到工程文件。

4 配置完成:#include 能索引到模块.h 文件。

5 第一个 VM 界面:

5.1 添加 ActiveX 控件,VM 控件在安装时已注册如 windows,可直接选择。

5.2 控件绑定与初始化

定义控件变量:

protected:

CVmProcedureControlInterface m_ctrlProcedure;

控件绑定

csharp 复制代码
void CVMMFCApplication1Dlg::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
DDX_Control(pDX, IDC_VMUSERCONTROL1, m_ctrlProcedure);
}
控件初始化:
BOOL CVMMFCApplication1Dlg::OnInitDialog()
{
CDialogEx::OnInitDialog();
// 将"关于..."菜单项添加到系统菜单中。
 ...
// TODO: 在此添加额外的初始化代码
try
{
m_ctrlProcedure.GetObjectPointer();
}
catch (CVmException e)
{}
return TRUE; // 除非将焦点设置到控件,否则返回 TRUE
}

5.3 运行结果:

相关推荐
lxyzcm19 分钟前
C++23新特性解析:[[assume]]属性
java·c++·spring boot·c++23
蜀黍@猿38 分钟前
C/C++基础错题归纳
c++
雨中rain1 小时前
Linux -- 从抢票逻辑理解线程互斥
linux·运维·c++
学术头条1 小时前
清华、智谱团队:探索 RLHF 的 scaling laws
人工智能·深度学习·算法·机器学习·语言模型·计算语言学
18号房客1 小时前
一个简单的机器学习实战例程,使用Scikit-Learn库来完成一个常见的分类任务——**鸢尾花数据集(Iris Dataset)**的分类
人工智能·深度学习·神经网络·机器学习·语言模型·自然语言处理·sklearn
游客5201 小时前
opencv中的常用的100个API
图像处理·人工智能·python·opencv·计算机视觉
Ven%1 小时前
如何在防火墙上指定ip访问服务器上任何端口呢
linux·服务器·网络·深度学习·tcp/ip
IT猿手2 小时前
最新高性能多目标优化算法:多目标麋鹿优化算法(MOEHO)求解TP1-TP10及工程应用---盘式制动器设计,提供完整MATLAB代码
开发语言·深度学习·算法·机器学习·matlab·多目标算法
神的孩子都在歌唱2 小时前
TCP/IP 模型中,网络层对 IP 地址的分配与路由选择
网络·tcp/ip·智能路由器
ALISHENGYA2 小时前
全国青少年信息学奥林匹克竞赛(信奥赛)备考实战之分支结构(实战项目二)
数据结构·c++·算法