海康visionmaster-VM 嵌入:嵌入用户软件界面的方法

描述

环境:VM4.0.0 + VS2015 及以上

现象:将 VM 整体嵌入到客户软件界面中?

解答

将 VM 软件整体嵌入到客户软件中,需要利用 Panel 控件,并且需要先启动 VM 软件,具

体代码如下:

C#

DllImport("User32.dll", EntryPoint = "SetParent")

public static extern int SetParent(IntPtr hWndChild, IntPtr hWndNew

Parent);

DllImport("user32.dll", CharSet = CharSet.Auto)

public static extern int MoveWindow(IntPtr hWnd, int x, int y, int n

Width, int nHeight, bool BRePaint);

// Start the process

p = System.Diagnostics.Process.Start

(@"D: \VisionMaster4.0.0\Applications\VisionMaster.exe");

// Wait for process to be created and enter idle condition

p.WaitForInputIdle();

// Get the main handle

appWin = p.MainWindowHandle;

//需要等待 p 启动,可自行判断,可加上 Thread.Sleep(10000);

SetParent(appWin, panel1.Handle);//this 在这里是 Panel 控件

MoveWindow(appWin, 0, 0, this.panel1.Width, this.panel1.Height, tru

e);

最终效果如下图所示,VM 就整体嵌入到客户软件的 Panel 空间中,并且可以保持 VM 所

具备的功能

相关推荐
武子康1 分钟前
调查研究-219 GPU 为什么能快,也为什么容易被大量小请求拖慢?
人工智能·llm·gpu
虚心的百褶裙1 分钟前
JavaScript性能优化
开发语言·javascript·性能优化
Drgfd3 分钟前
多模态大模型技术深耕:从模态融合到跨域迁移,重构AI理解与生成能力
人工智能·深度学习·计算机视觉
HhzZzzzz_4 分钟前
萨科微slkor2026年7月6日“每日芯闻”。国际芯闻:
人工智能·智能手机·编辑器
爱奥尼欧6 分钟前
【LangChain】2.提示词工程
人工智能·microsoft·langchain
凯瑟琳.奥古斯特8 分钟前
二分查找解力扣1011最优运载能力
开发语言·c++·算法·leetcode·职场和发展
博图光电10 分钟前
博图光电鲜奶字符缺陷检测方案
人工智能·视觉检测·制造
IT_陈寒11 分钟前
React useEffect里面写异步,我的状态怎么老丢?
前端·人工智能·后端
敲不会代码也学不会英语25 分钟前
【AI学习之旅02】AI全景图:一张图看懂AI生态——机器学习/深度学习/大模型关系与术语扫盲
人工智能·学习·机器学习
Tim_1025 分钟前
【C++】014、左值与右值的区别
开发语言·c++