重要更新,Office Add-in将全面支持Webview2

在陪娃上课,耳边回响着美妙的音乐,打开电脑码字,给大家分享一个非常重要的消息:Office Add-in将全面支持WebView2了。

891762940cdfebcbdbf2e2efa3181e9a.png

Office的开发爱好者可能会对此很感兴趣,虽然新一代的Web Add-in随着Office 365的推出,也已经发布了好几年了,但它的发展也遇到了一些问题。

  1. 学习成本的问题。早期的Office 开发者大多是从VBA开始学起,后来有了更新的VSTO,但本质上原理是差不多的,熟悉Office的对象模型,似乎就可以走遍天下都不怕了。但到了Web Add-in的时代,大家熟悉的Office 对象模型虽然还在,但基于Web的开发技术(HTML,Javascript,CSS等)对于传统的Office开发者来说却是一个完全陌生的领域,如果再扯上服务器和客户端架构,异步编程等,学习曲线就更加陡峭了,让人望而生畏。

  2. 运行环境的问题。Web Add-in有很多优势,但是它也有一些前提条件,例如它必须运行在比较新的Office客户端里面(最好是Office 365版本的客户端),另外对于一些初学者来说更加抓狂的是,它因为本质上是一个Web应用,所以需要有一个运行时环境,你可以理解为内嵌在Office客户端中的一个浏览器。而这个环境就可能让你的信心一下子完全丧失。作为Web开发的同志们都知道,浏览器适配是一个很头疼很要命的问题。在不同的情况下,Office 客户端会使用不同的浏览器,可以参考 https://docs.microsoft.com/en-us/office/dev/add-ins/concepts/browsers-used-by-office-web-add-ins,也就是说,你不仅要克服第一条提到的学习曲线问题,还要特别留意,根据浏览器所支持的特性,选择不同的技术实现,或者做适配处理。

以上提到的第一个问题,我认为大家只要看好Office 开发平台,以及其背后的业务价值,迟早会有一批人开始学习并且掌握这些技术,以我自己的经验来说,这是值得的一个投资。而第二个问题,有望在接下来的将来得到很好的解决,因为Office Add-in将全面支持Webview2, 请参考官方的声明:https://developer.microsoft.com/en-us/office/blogs/announcing-webview2-for-office-add-ins-platform/,去年8月份开始Preview的这个功能,我最近开始测试,确定它能成熟稳定的工作。

12c74f7d2a80775b88f121da25a4d18d.png

有些童鞋们可能还知道Webview2及其的意义。简单地说,你可以理解为它是一个浏览器引擎或者控件,是基于Chromium 内核的,可以说这是目前市场上最先进,也是功能最完善,占有率最高的浏览器内核。谷歌发明了这个内核,Chrome使用这个内核的产品,微软的Microsoft Edge也是用这个内核的产品。

官方文档提到,只要Office客户端是运行在Windows操作系统上,而且版本高于 Office 365 version 16.0.13127.20082 就会自动使用Webview2来做Add-in的运行时,所以你如果感兴趣,可以检查一下你的Office客户端版本。

87f2e0f65602df82f4b2b5546620cf18.png

怎么确定你的客户端到底是不是支持了呢?很简单,你可以打开一个Add-in,例如安装由我出品的 “Knowledge exercise” ,然后在右侧菜单中选择 “security info" 菜单。

aac3e0da617ba8d7e49c30f4166f5f31.png

如果你看到是下面这样的提示,则表示你用的是最新的Webview2

cecf15fd73b82dc3127a435d48191efa.png

你还可以在插件的页面上右键菜单中选择 “inspect” 菜单

557d0fcf2725b935789824278a01094e.png

如果你看到下面这样的一个窗口,那么就确信无疑了,这是Webview2,这是Web开发人员再熟悉不过的Dev tools啊,泪牛满面ing...

cb1bde88efb4972e601eb7e6477d2505.png

我昨天写了一篇文章(前端开发的盛宴

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/296875.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

哈佛学者:这3本英文名著,每天小读10分钟,英语level暴涨....

全世界只有3.14 % 的人关注了爆炸吧知识《锵锵》中窦文涛曾说过:“读原著学英语,就像有了可视化进度条,每天的提升肉眼可见。”今天就给大家推荐3本豆瓣高分英文名著,学英语不枯燥,每天小读10分钟,即可学到…

Oracle下SQL基本操作(二)

----------------------------建表,与插入数据 --创建职务表 CREATE TABLE POSITION( POSITIONID VARCHAR2(2), POSITIONNAME VARCHAR2(20), CONSTRAINTS POS_ID_PK PRIMARY KEY (POSITIONID) ); --创建工资级别表 CREATE TABLE EMPLEVEL( LEVELNO VARCHAR2…

php -- 用文本来存储内容,file_put_contents,serialize,unserialize

根据存储的内容来划分 字符串: file_put_contents :将一个字符串写入文件 语法:int file_put_contents ( string $filename , mixed $data [, int $flags 0 [, resource$context ]] ) 参数 filename:要被写入数据的文件名。 data…

python入门html_python-html入门

网页三剑客&#xff1a;HTML、CSS、JS上网就是下载网页&#xff0c;web页面是浏览器的执行结果&#xff0c;浏览器是代码解释器超文本&#xff1a;指页面内容可以包含图片、链接、音乐、程序等非文本元素。标签语言特点&#xff1a;简单<>标签属性&#xff1a;1)键值对2)…

Android一些知识总结

Android一些知识总结 近来看zp的android视频&#xff0c;按照他的视频中开发了几个小软件&#xff0c;学到了一些自己以前都没有学到的知识&#xff0c;所以在这儿总结一下&#xff0c;偶尔温习对自己有很大的帮助吧。 1.关于paddingLeft和layout_marginLeft&#xff1a; andro…

linux aemv7,无法在我的Ubuntu machin中安装“xlwings”

我试图在我的Ubuntu机器上安装xlwings模块&#xff0c;但失败如下pip3 install xlwingsCollecting xlwingsUsing cached https://files.pythonhosted.org/packages/cc/c9/6bb1849dbee6e8a40beb9a0d21df9787bee45cda1d0bb575a0cd388dd260/xlwings-0.15.3.tar.gzComplete output …

女朋友当众甩了我一巴掌,我扑上去......

1 小朋友&#xff0c;你是否有很多问号&#xff1f;▼2 小鸟&#xff1a;我呸&#xff01;秀什么秀&#xff1f;没眼看&#xff01;▼3 开学后你的上课状态......▼4 不能总让保安叔叔拿枪指我▼5 哥哥&#xff1a;让我看看&#xff0c;我妹妹怎么那么可爱&#xff01;▼6…

为什么我们要做2021.NET中国开发者调研

今年7月的时候&#xff0c;由上海MS Reactor牵头&#xff0c;我们做了一次小型的闭门会议。主要是围绕.NET开源方向进行讨论。 数闪科技的技术总监谷首道给我们带来的消息是他们有意将公司目前正在研发和使用的一整套技术框架进行开源。亲切可爱的辛老师、盛派创始人苏震巍、数…

Linux PCI 设备驱动基本框架(一)

Linux将所有外部设备看成是一类特殊文件&#xff0c;称之为“设备文件”&#xff0c;如果说系统调用是Linux内核和应用程序之间的接口&#xff0c;那么设备驱动程序则可以看成是 Linux内核与外部设备之间的接口。设备驱动程序向应用程序屏蔽了硬件在实现上的细节&#xff0c;使…

Request对象

当客户端发出请求执行asp.net程序时&#xff0c;CLR会将客户端的请求信息包含在Request对象中。这些请求信息包括请求报头&#xff0c;客户端的基本信息&#xff08;如浏览器类型&#xff0c;浏览器版本号&#xff0c;用户所用的语言以及编码方式等&#xff09;&#xff0c;请求…

sql连接远程服务器索引超出了_手机怎么连接服务器远程桌面?RD client远程桌面使用教程...

大家好啊&#xff0c;现在很多游戏、应用为了体验感好、方便使用都实现了多端同步&#xff0c;服务器远程连接也不例外&#xff0c;今天给你们分享手机连接服务器远程桌面的操作方法【 好东西一起分享&#xff0c;好音乐一起听 】不管是安卓还是苹果手机&#xff0c;咱们都需要…

java垃圾回收机制

为什么80%的码农都做不了架构师&#xff1f;>>> Java垃圾回收机制 C程序员觉得内存管理太重要了,所以一定需要自己管理, java程序员觉得内存管理太重要了,所以一定不能自己管理! 一、简述 垃圾回收是一种动态存储管理技术&#xff0c;它自动地释放不再被程序引用的…

C语言顺序结构程序设计PPT,C语言21(顺序结构程序设计之1).ppt

《C语言21(顺序结构程序设计之1).ppt》由会员分享&#xff0c;可在线阅读&#xff0c;更多相关《C语言21(顺序结构程序设计之1).ppt(28页珍藏版)》请在人人文库网上搜索。1、上一节我们学了,C语言程序的结构 C语言程序的书写规范,第2章 最简单的C程序设计,-顺序程序设计,C程序常…

神PS!老爸把儿子的画作P成现实,看完我笑哭了

全世界只有3.14 % 的人关注了爆炸吧知识只要你敢画&#xff0c;我就敢P成现实这种脑洞大开的事发生在英国的一对父子身上儿子天马行空地乱画爸爸认认真真地P出来象君几年前在ins发现了这对宝藏父子没想到他们的疯狂依旧在继续着四脚怪物系列看上去好像也没什么毛病你就是我见过…

单体应用 适合采用 dapr 构建吗?

缘起今天在微信群里有同学问 ”纯.net 项目&#xff0c;有必要上dapr吗&#xff1f;” 当时不假思索的说不是微服务没必要&#xff0c;其他群友也说没必要。下午细想了一下&#xff0c;觉得这个和微服务没有关系&#xff0c;如果我的应用是个单体架构&#xff08;将所有功能都部…

在主窗体中打开一个新子窗体,如果已有子窗体,则激活它,而不打开新的。...

frmGroupMgr fgm null; //遍历窗体中是否已存在同名的子窗体 foreach (Form f in this.MdiChildren) { //检测是不是当前子窗体名称 if (f.Text "组管理") { f.Activate(); fgm f as frmGroupMgr; break; } } //窗体中没有该子窗体 则打开一个新窗体 if (fgm nul…

EqualLogic全攻略视频[(四)高级管理]

制片人&#xff1a; 戴尔中国大客户部高级市场经理 Andy Peng 彭宇恒 演讲者&#xff1a; 戴尔亚太区存储技术总监 Alvin Kho 许良谋 戴尔中国高级系统工程师 English Li 李英文 EqualLogic全攻略视频[&#xff08;四&#xff09;高级管理] 更多精彩文章请关注: 戴尔技术社区转…

一次面试引发的思考(中小型网站优化思考) (转)

前言 故事的起因是这样的&#xff0c;由于本人地处偏僻工作地点在美丽的冰城哈尔滨虽然地方很美丽&#xff0c;但是这里的软件行业实在是算不上“美丽”&#xff0c;这么多年由于个人原因或者公司原因经常换工作&#xff0c;因为这里都是中小型公司&#xff0c;没有什么大公司。…

string 字符串中字符无效_JavaScript中的字符串(string)到底是什么?

通过可见字符建模把JavaScript中的string当作字符序列来看待是最直观的&#xff0c;虽然这样并不准确。以下代码示例中的字符串由5个字母和一个感叹号组成&#xff1a;const message Hello!;如果把string当作是可见的字符序列&#xff0c;那么Hello!中的字符数是6&#xff1a;…

c语言二维数组代码,C语言之二维数组(示例代码)

二维数组及其指针1 ) 在了解二维数组之前&#xff0c;我们先来了解一维数组及其指针我们知道&#xff0c;一维数组中&#xff1a;数组名代表-->数组首元素的首地址(千万不要认为是数组的首地址(&a)&#xff0c;绝对不是)在内存中&#xff0c;该代码的表现形式如下图&…