Visual C++ 6.0/2008 (MFC)

<< 点击显示目录 >>

主页  PVI通信 > PVI帮助信息 > PVI实例 > PVICOM > PviSimple >

Visual C++ 6.0/2008 (MFC)

PviSimple 编程实例显示了在一个简单的MFC(Microsoft Foundation Classes)应用程序中读取变量数据。

源代码是为Unicode(2字节的字符)准备的。随之而来的项目文件被预设为1字节的字符。

对于PVICOM 用户信息 使用的是窗口信息 类型  。

该编程实例包含以下文件。

File

描述

PviSimple.dsp,

PviSimple.dsw

Visual C++ 6.0的工作区和项目文件。(32位PVI)。

PviSimple.vcproj,

PviSimple.sln

Visual C++ 2008的解决方案和项目文件。(32和64位PVI)。

PviSimple.cpp,

PviSimple.h

类CPviSimpleApp(Windows应用程序对象)。

PviSimpleDlg.cpp,

PviSimpleDlg.h

类CPviSimpleDlg。

样品程序中的对话框对象。所有的PVI通信都是通过这个对象进行的。

附加文件用于保存程序资源或作为AFX接口,并由Visual Studio管理。

如果用Visual C++ 2008打开示例项目(解决方案文件PviSimple.sln),并对其进行修改和再次保存,以后可能无法用Visual C++ 6.0打开(工作区文件PviSimple.dsw)或生成它。因此,建议在开始之前先备份原件。

本编程范例的核心部分是类型为T_PVIOBJ_CONFIG的配置表g_PviObjList,该表包含所有使用的PVI对象的名称和参数以及与之相连的对话框。可视化是由表中的条目控制的。

下面的成员函数可以作为例子。

Function

描述

CPviSimpleDlg::OnInitDialog

这个消息传递函数在对话框初始化时被运行。

进行PVI初始化。当 PviInitialize 函数被调用时,客户端实例被注册,建立与PVI管理器的连接。全局事件 POBJ_EVENT_PVI_ARRANGEPOBJ_EVENT_PVI_DISCONN 被激活,以表明连接状态。

CPviSimpleDlg::OnClose

这个消息传递功能在主对话框关闭时运行。

进行PVI去初始化。当 PviDeinitialize 函数被调用时,客户端实例被删除。与PVI管理器的连接被终止,所有 链接对象 和临时 进程对象 被启用。

CPviSimpleDlg::OnPviArrangeEvent

这个消息传递函数被用作 全局事件 POBJ_EVENT_PVI_ARRANGEPVI 用户消息

使用异步函数 PviCreateRequest 创建示例程序的 所有 链接对象 和临时 进程对象。配置表中相应对象条目的指针包含在PVI 用户消息的用户参数

CPviSimpleDlg::OnPviCreateResponse

这个消息传递函数被用作PVI 用户消息 ,用于响应请求函数 PviCreateRequest

用户参数IParam是指向对象条目(Typ T_PVIOBJ_CONFIG)的指针。响应数据中报告的错误意味着在PVI管理器中无法创建该对象(例如,无效的对象名称,对象描述中的语法错误,等等)。在这种情况下,错误会显示在各自变量的文本字段中。

CPviSimpleDlg::OnPviDisconnEvent

这个消息传递功能被用作 全局事件 POBJ_EVENT_PVI_DISCONNPVI 用户消息

PVI连接的错误状态会显示在所有配置的文本字段中。

CPviSimpleDlg::OnPviDataEvent

这个消息传递函数被用作PVI 用户消息 ,用于错误状态或所有创建的PVI对象的数据。

用户参数IParam是一个指向对象条目的指针(Typ T_PVIOBJ_CONFIG)。错误状态或变量数据显示在文本字段中。变量数据以字符串格式提供(格式在配置中定义)。

如果没有为链接对象指定数据格式(与本例不同),变量数据将以PLC变量的格式提供。如果PLC变量的格式发生变化,必须对应用程序进行相应调整。应用程序总是可以使用 POBJ_EVENT_DATAFORM 数据格式事件来获得关于当前数据格式的信息。