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

相关推荐
淡海水7 小时前
02-02-原理篇-分代GC
算法·unity·c#·游戏引擎·.net·gc
BD_Marathon7 小时前
多轮对话聊天机器人
开发语言·机器人·c#
czhc11400756638 小时前
设备标定页防呆为何失效:草稿与真值的错位
c#
周杰伦fans11 小时前
轻量模型高并发推理优化技巧
开发语言·人工智能·c#
周杰伦fans11 小时前
C#对话摘要降低Token消耗
人工智能·后端·c#
en.en..15 小时前
分清 b 与 B:比特、字节(告别8倍、容量、缓冲区误区)
c#
ly768915 小时前
ISR 收缩与 HW 推进:副本同步的边界条件与 UnderReplicated 排障
数据库·kafka·c#·linq·isr·hw·副本同步
miofly15 小时前
GitHub 今日推荐|REDox:64 位 token 表示结构化数据,内存占用降 70% 支持多格式互转
开源·c#·github
淡海水15 小时前
02-03-原理篇-大对象堆
unity·c#·游戏引擎·.net·gc
海宇大数据16 小时前
零信任架构实战:基于海宇身份证OCR构建自动化跨境清关核验网关
人工智能·架构·c#·自动化