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

相关推荐
qq_4542450323 分钟前
BasicMethod.Map 设计框架:8 个并行基础模块的数学根基与实现
数据结构·算法·c#
Byron Loong1 小时前
【c#】Bitmap释放之 大象与蚊子
开发语言·c#
临风细雨2 小时前
从 Bun 的 Rust 重写,看 C# 如何重建 AI 基础设施层
人工智能·rust·c#
吴可可1233 小时前
C# CAD二次开发自定义实体实现
c#
z落落4 小时前
C# WinForm 线程池与事件等待+进度条暂停恢复实战案例
开发语言·c#
酷酷的身影6 小时前
Managers/APConfigManager.cs
开发语言·ui·c#
贾斯汀frank18 小时前
C# 15 类型系统改进:Union Types
开发语言·windows·c#
曹牧20 小时前
Visual Studio:输出路径
windows·c#
时代的狂20 小时前
如何理解 C# 的 async 和 await
c#·.netcore·async·await
xiaoshuaishuai81 天前
C# AI实现PR处理、单元测试
开发语言·c#·log4j