无法嵌入互操作类型 请改用适用的接口_西门子COMOS软件开发定制学习7-嵌入谷歌浏览器内核...

首先需要声明的是,本篇并非COMOS实用案例,只是希望借此让大家了解,如何使用微软的WPF和C#语言开发COMOS插件。

首先看下效果图

747581bde4781fd185cd56fe05fcff17.png

功能说明:

拖拽COMOS设备至定制的浏览器,自动根据设备的名称和其制造商参数值,搜索相关网页内容。

操作演示(gif动图):

8f3e60dd2a82819aeed71f6a66946e60.gif

国产浏览器我们见过的很多,现在基本上很多大厂都推出了各自的浏览器,但是如果我们仔细研究会发现,虽然叫法众多,但是终究逃不过两个引擎,IE内核和谷歌浏览器的WebKit。

需要说明的是WebKit并非谷歌产品,而是开源软件,苹果系统的Safari浏览器同样使用的是WebKit内核。

在COMOS软件中嵌入IE内核非常简单,只需使用WPF的WebBrowser控件,该控件会自动根据用户安装的IE版本加载相应的IE内核。

但是采用IE内核有很大的缺点:

  • 如用户电脑系统中安装的IE版本过低,某些网页可能无法正常加载
  • IE内核渲染速度慢
  • IE内核对HTML5支持不足,甚至出现丢三落四的问题

WebKit优势

  • 目前最快的浏览器核心
  • 使用面最广的浏览器核心(谷歌浏览器、苹果浏览器都用这个核心)
  • 对开发人员最友好的浏览器核心(社区支持很给力)

开发准备 :

  • Visual Studio 2019 Community(免费使用)
  • WebKit内核开发文件(免费开源)

首先需要把下载好的webkit.net bin目录下的所有文件复制到COMOS安装目录Bin文件夹中。

接下来使用管理员权限启动命令提示符。

输入“SUBST R:”+COMOS安装目录的Current文件夹路径,创建虚拟磁盘R,如下所示:

SUBST R: "C:Program Files (x86)COMOS103Current"

打开“我的电脑”将看到新增了R盘:

9eba46074a8f454bfc72e4794047186f.png

打开Visual Studio,点击创建新项目,搜索WPF,选择WPF用户控件库,点击下一步。

1fa64e4fc63c9c35f77400806270e95b.png

输入项目名称,推荐以“Custom.”为前缀,然后点击“创建”按钮

fa3c75c2b3dac6cdf7c76b55182f122f.png

修改“UserControl1”名称为“WebNavigator”

6c04f5a1c8b9f5a3c1acbd3b41ecf1da.png

修改XAML处的“UserControl1”为WebNavigator

34ac68fb78e3f0921fcebc9cab50a41b.png

修改CS文件中的“UserControl1”为“WebNavigator”

e5621676f823b023aab01aeb368f1376.png

引用如下4个DLL文件

4d2c3f7f7cf06e48613ce1dccb276855.png

设置引用DLL属性中的互操作类型和复制本地均为false

c9136ba3ba950f110996ca8c05a79125.png

因为WebKit引擎只支持32位系统,所以项目属性中的“目标平台”需要选择x86

815f6cad2ec842846f8cb62d6b931fc8.png

生成事件中输入:

Copy "$(TargetDir)$(TargetName).dll" "R:Bin$(TargetName).dll"

Copy "$(TargetDir)$(TargetName).pdb" "R:Bin$(TargetName).pdb"

5b741e5625f107b51b650fc1231c227c.png

调试选择“外部程序”,并输入Comos.exe文件路径

b3207d50200cc494855e85cf43fa4958.png

在CS文件中加Using引用脚本

using Plt;

using WebKit;

using Comos.Controls;

using System.Windows.Forms.Integration;

using Chemserv;

给WebNavigator添加接口“IComosControl”。

选中“IComosControl”,按“Alt+Enter”弹出“实现接口”。

ccc69a748f53dc2b18a4a1a7a659ccd1.png

实现接口如下所示:

d2e380910eeb92b2547117ac6748a540.png

清理Throw语句

c24caf519280b58918c0b5a8beeca9c0.png

在COMOS安装目录“configmenu”文件夹中复制"ExampleMain.xml"文件,重命名为“Main.xml”。

编辑“Main.xml”文件,增加一个“Tool”,设置大致如下:

id="@NET.Custom.WebKitBrowser"

itx="产品搜索"

assembly="Custom.WebKitBrowser"

Progid="Custom.WebKitBrowser.WebNavigator

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值