水电电工知识
电工知识|WinCC V7.0 支持.NET控件的编程入门
2017-05-26  浏览:160
水电之家讯:1. 开发.NET控件的示例程序

WinCC V7.0支持的自定义.NET控件,需要使用Visual Studio 2005编写。下面以C#编程语言为例,开发一个简单的.NET控件,这个控件仅提供一个方法Add, 实现两数相加的功能。

在VS2005中新建一个工程CalculateControl,工程类型为 Visual C# 中的Windows Control Library,在 Solution Explorer 窗口中,将UserControl1.cs重命名为 Calculate.cs,弹出的对话框询问是否改变所有与UserControl1相关的代码,点击[Yes]确认。在Calculate.cs 文件的Calculate类中添加Add函数,用于计算两数之和,如下所示:
public double Add(double dblA, double dblB)

{

return ( dblA + dblB );

} 在 Calculate.cs 文件的Calculate类之前插入如下代码: // CalculateControl.Calculate 是该控件的PROGID.

[ProgId("CalculateControl.Calculate")]

// 缺省的是ClassInterfaceType.AutoDispatch,该方式下只生成dispatch接口,

// 只能被使用script、VB等late bingding方式的COM客户使用。

[ClassInterface(ClassInterfaceType.AutoDual)] 然后在 Calculate.cs 文件的上部插入如下代码:

using System.Runtime.InteropServices; 将工具栏中的 Solution Configurations 下拉列表设为 Release,在工程\属性的 Application 页中,点击 [Assembly Information…] 按钮,选中 Make assembly COM-Visible,并点击 [OK] 按钮确认。在 Build 页中,选中 Register for COM interop 后,保存设置,并编译程序,这样编译后同时会生成CalculateControl.tlb文件,并且自动将其注册(命令行命令regasm有同样的效果),注意到CalculateControl.dll生成到 bin\Release 文件夹中。 2.开发.NET控件的安装程序

如果该控件需要在另一台计算机上使用,需要为该控件设计安装程序。新建一个VS2005工程SetupCalculateControl,工程类型为Setup and Deployment \ Setup Project。在Solution Explorer窗口中的工程名(SetupCalculateControl)节点上右键单击,在弹出的快捷菜单中选择Add\Assembly…项,在Browse页中,找到刚才编译的CalculateControl.dll,将其加入到安装程序中,注意到CalculateControl.tlb 也一并被加入进来。选中CalculateControl.dll节点,将其属性中的Register从vsdraDoNotRegister改为vsdraCOM,用于在安装过程中自动注册控件。将工具栏中的 Solution Configurations 下拉列表设为 Release,编译该安装工程,在Release 文件夹中可以找到生成的安装文件(包括setup.exe和SetupCalculatorControl.msi)。 3. 测试.NET控件

使用ActiveX Control Test Container测试该控件的功能,双击tstcon32.exe(位于$\Program Files\Microsoft Visual Studio 8\Common7\Tools),在Edit菜单中选择 [Insert New Control…] ,在弹出的 Insert Control 对话框中,点击 [Implemented Categories…] 按钮,选中 .NET Category 复选框,点击 [OK] 按钮确认。在列表框中选择 CalculateControl.Calculate,如图1所示:

图 1:在ActiveX Control Test Container中插入控件 点击 [OK] 按钮确认,这时该.NET控件被加入到测试容器中。选中该控件,在Control菜单中选择[Invoke Methods…]项,在Method Name中选择Add(Method),分别设定两个加数的值,点击 [Invoke] 按钮,在 Return Value 文本框中可以看到两数相加的结果。 4. 在WinCC V7.0中加载和使用该控件的步骤 1.双击该控件的安装文件Setup.exe,安装并注册CalculateControl.dll控件,用户可以修改安装目录,并按照正常的步骤安装(如果想卸载该控件,可以在控制面板的添加/删除程序中移除该控件)。 2.新建一个WinCC V7.0工程,并新建一个画面。按照如下步骤加载和使用该控件: 在Object Palette(对象面板)的Controls页中的.NET Control上右键单击,选择 [Add/Remove…] 快捷菜单项。 在弹出的对话框中点击[Add…]按钮,在打开的对话框中找到安装路径下的CalculateControl.dll控件(例如:C:\Program Files\Default Company Name\SetupCalculateControl\ CalculateControl.dll),双击该控件或者选中它并按[Open]按钮。

图 2:在Select .NET Object对话框中插入自定义.NET控件 如图2所示,在Available Controls列表中高亮显示Calculate项,选中它前面的Check Box,点击最下面的[OK]按钮,即可将控件加入到WinCC V7.0中。 将.NET Control节点展开,找到” CalculateControl.Calculate”并将其拖拽到窗体上的合适的位置。 在窗体上加入一个静态文本控件,将其对象名称改为 CalculateResult。 在窗体上加入一个按钮,将其文本改为Add,在按钮的鼠标左键单击(Button\Mouse\Press left)事件中加入VBS脚本,创建.NET控件并调用它的Add方法,源程序如下所示:
Dim objCalculateControl

Dim objCalculateResult

Set objCalculateControl = CreateObject("CalculateControl.Calculate")

Set objCalculateResult = ScreenItems("CalculateResult")

objCalculateResult.Text = objCalculateControl.Add ( 6, 12 )

注意,WinCC V6.2使用ScreenItems(”控件对象名”)引用加入窗体的ActiveX控件。但WinCC V7.0不能使用这种方法,建议使用CreateObject(“.NET控件的PROGID”) 来创建和引用加入的.NET控件。 保存并运行该程序,点击[Add]按钮,静态文本中将显示结果18。注意:本文提供了 WinCC V7.0 支持.NET控件的基本编程方法和测试程序,所有的源程序及测试过程仅供参考。

水电之家为您提供最全面的管材,管件,水电,电线,电工,管材水电品牌的装修知识点和各种管材水电的导购与在线购买服务,拥有最便宜的管材水电价格和最优质的售后服务,每天都有秒杀的抢购活动哦!敬请登陆水电之家:http://shuidian.jc68.com/
更多»您可能感兴趣的文章:
更多»有关 电线 的产品:
  • 水电电工资讯
  • 发表评论 | 0评
  • 评论登陆
  • 移动社区 天花之家 木门之家 灯具之家 铁艺之家 幕墙之家 五金头条 楼梯头条 墙纸头条 壁纸头条 玻璃头条 老姚之家 灯饰之家 电气之家 全景头条 照明之家 防水之家 防盗之家 区快洞察 建材 枣庄建材 临沂建材 南昌建材 上饶建材 抚州建材 宜春建材 吉安建材 赣州建材 鹰潭建材 新余建材 九江建材 萍乡建材 景德镇陶瓷 石家庄建材 衡水建材 廊坊建材 沧州建材 承德建材 建材之家 企业之家 720全景
    (c)2015-2017 BYBC.CN SYSTEM All Rights Reserved