C#开发一个WinCC浏览器组件,WinCC脚本调用直接打开Web应用

在WinCC 7.5以及WinCC 7.5以前版本,WinCC自带浏览器组件(Webbrowser)版本比较老,使用其Webbrowser组件去打开某些Web应用无法打开。如何使用WinCC 7.5和旧版本打开Web应用就是一个问题,本文开发一个WinCC浏览器组件,可以配置链接URL、窗体大小以及窗体名称实现组态使用这个组件打开不同Web应用。

1.visual stduio代码与包引用

(1)新建window窗台应用

(2)添加WebView2包引用

(3)窗体添加WebView控件

(4)添加配置文件,名称App.config

配置文件填写如下内容:

<?xml version="1.0" encoding="utf-8" ?>

<configuration>

<startup>

<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />

</startup>

<appSettings>

<add key="Width" value="1360"/>

<add key="Height" value="800"/>

<add key="Url" value="http://www.baidu.com"/>

<add key="Title" value="WinCC浏览器"/>

</appSettings>

</configuration>

(5)窗体代码

窗体Load事件时候填写如下代码

this.Width = int.Parse(ConfigurationManager.AppSettings.Get("Width"));

this.Height = int.Parse(ConfigurationManager.AppSettings.Get("Height"));

this.Text = ConfigurationManager.AppSettings.Get("Title");

this.StartPosition = FormStartPosition.CenterScreen;

this.webView.Source = new Uri(ConfigurationManager.AppSettings.Get("Url"));

(6)编译生成组件

2.上述整个目录拷贝到WinCC电脑任一路径下。

(1)设置配置文件中Web地址、窗体大小以及名称

<add key="Width" value="1360"/>

<add key="Height" value="800"/>

<add key="Url" value="http://www.baidu.com"/>

<add key="Title" value="WinCC浏览器"/>

本例子直接打开百度,窗体大小和名称设置1360、800以及WinCC浏览器

(2)WinCC调用窗体C脚本

按钮事件:ProgramExecute("路径\\WinCCBrowser.exe");

(3)WinCC调用窗体VBS脚本

Dim obj,str

Set obj = CreateObject("WScript.shell")

str=HMIRuntime.ActiveProject.Path

str=str & "C:\\Program Files\\TIS\\TISControlForWinCC.exe"

obj.Run str

代码下载:https://download.csdn.net/download/bjhtgy/91988693?spm=1001.2014.3001.5501

相关推荐
c#上位机28 分钟前
halcon窗口显示带有箭头的直线
计算机视觉·c#·halcon
秦苒&1 小时前
【C语言指针四】数组指针变量、二维数组传参本质、函数指针变量、函数指针数组
c语言·开发语言·c++·c#
秋雨雁南飞1 小时前
C# 字符串占位
开发语言·c#
正运动技术2 小时前
PC强实时运动控制(一):C#的EtherCAT总线初始化(上)
c#·运动控制·正运动技术·运动控制器·ethercat·正运动·运动控制内核
d111111111d2 小时前
在STM32中,中断服务函数的命名有什么要求?
笔记·stm32·单片机·嵌入式硬件·学习·c#
极客智造3 小时前
深入解析 C# Type 类:解锁反射与动态编程的核心
c#·反射
SmoothSailingT4 小时前
C#——textBox控件(1)
开发语言·c#
superman超哥4 小时前
仓颉语言中并发集合的实现深度剖析与高性能实践
开发语言·后端·python·c#·仓颉
工程师0074 小时前
C#中的服务注册剖析
c#·服务注册
张人玉5 小时前
c#DataTable类
数据库·c#