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

相关推荐
fl1768312 分钟前
基于C#WPF实现的内存加速球清理类似360加速球内存清理
开发语言·c#·wpf
界面开发小八哥2 小时前
界面控件DevExpress XAF v26.1新版亮点——AI Agent Skills
ai·c#·跨平台·devexpress·ui开发·xaf
csdn_aspnet3 小时前
C# 高效便利的处理数据
开发语言·windows·c#
淡海水3 小时前
03-02-线性-List-T-动态数组布局-扩容与操作成本
数据结构·windows·c#·list·编译·clr·机器码
csdn_aspnet13 小时前
C# 在逗号分割的字符串中判断是否包含指定字符
c#·正则·linq·string·regex·contains
宝桥南山13 小时前
Blazor Web Assembly - 体验一下Authentication State从Server共享给Client
microsoft·微软·c#·asp.net·.net·.netcore
淡海水15 小时前
02-06-历史-托管GC机制-垃圾回收如何影响数据结构选择
c#·编译·gc·机器码
longxiaozhang61 天前
C# static:静态成员,小白也能看懂
开发语言·c#
longxiaozhang61 天前
C#继承:让代码少写一点,偷懒的好方法
开发语言·c#
rockey6271 天前
C#脚本引擎之AScript与DynamicExpresso对比
c#·.net·script·动态脚本