ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

C#+VisionMaster联合开发(一)_操作方案

C#+VisionMaster联合开发(一)_操作方案

1、加载方案(下文中的VmSolutionMain即为VmSolution.Instance)

// 加载方案 - 模块方案加载进度
VmSolution.Load(solutionFilePath, solutionPwd, isSilentExecute);
VmSolutionMain = VmSolution.Instance;  // 临时保存,下文中的VmSolutionMain即为VmSolution.Instance// GetVmException(Exception ex)  // 获取VM内部异常,用于规范抛出去的异常
VmSolution.OnCameraCollectCallBackEvent += VmSolution_OnCameraCollectCallBackEvent;  // 相机取图结束信息回调,可用来获取图片啥的(VM4.3)
VmSolution.OnProcessStatusStartEvent += VmSolution_OnProcessStatusStartEvent;        // 流程连续执行开始时 执行,单次执行时不执行(VM4.3)
VmSolution.OnProcessStatusStopEvent += VmSolution_OnProcessStatusStopEvent;          // 流程单次执行/连续执行结束时的事件(VM4.3)

2、获取方案路径

string vmSolutionFilePath = VmSolutionMain.SolutionPath;

3、获取方案版本号

string vmSolutionVersion = VmSolutionMain.GetSolutionVersion(solutionFilePath, solutionPwd);

4、获取方案中的流程列表

// 加载流程列表
ProcessInfoList processInfoList = VmSolutionMain.GetAllProcedureList();
if (processInfoList.nNum > 0)
{var processNames = processInfoList.astProcessInfo.ToList().Where(a => !string.IsNullOrEmpty(a.strProcessName)).Select(a => a.strProcessName).ToList();
}

5、获取方案中的模块列表

// 加载模块列表
ModuleInfoList moduleInfoList = VmSolutionMain.GetAllModuleList();
if (moduleInfoList.nNum > 0)
{List<string> vmModuleNames = moduleInfoList.astModuleInfo.Where(a => !string.IsNullOrEmpty(a.strDisplayName)).Select(a => a.strDisplayName).ToList();
}

 

返回列表