操作系统中未安装webview2

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了操作系统中未安装webview2相关的知识,希望对你有一定的参考价值。

通常来说,选择Web应用还是原生应用来开发是一种在通用性和本地权限之前的权衡。WebApp兼容的范围很广,而且Web前端代码基于浏览器天生跨平台,而且前端框架多好开发。而原生应用有很大本地权限,可以进行各种文件和操作系统接口的调用。WebView可以结合这两者的优点进行开发。

WebView2允许你在本地App里面嵌入web相关的技术(例如html,CSS和javascript)。WebView2控件使用微软的Edge作为渲染引擎,你可以嵌入一部分或者整个App都用WebView来做。微软还有一个类似的出得更早框架是CEFSharp,这个但是下载依赖要稍繁琐,具体可以看我这篇文章。

使用WebView2的优势
可以运用Web的生态和技术库。Web前端的各种库,工具都可以直接套用来开发界面。
开发得更
Windows 7,8,10都支持。
本地应用API。可以调用完整的本地API。
代码复用。代码库中的前端代码可以跨平台重用。
微软支持。这个插件这是有微软持续更新的GA版本,支持.NET FrameWork 4.7.2以后的版本、.NET Core、Win32 C/C++,.NET 5,.NET 6,WinUI 2.0/3.0。
带内核更新的部署。依赖于定期更新和修复漏洞的Choromium内核。
固定版本内核部署。可以选一个固定的Choromium版本部署WebView2。
采用增量。可以逐步将网页逐个添加或替换到你的应用中。
使用WebView的步骤
1.首先安装WebView2 运行时或者Microsoft Edge Insider(安装Beta版最稳定):

https://developer.microsoft.com/zh-cn/microsoft-edge/webview2/#download-section

https://www.microsoftedgeinsider.com/zh-cn/download

2.创建一个WinForm项目(Win32,WinUI,WPF,UWP应用等步骤类似),然后安装WebView2插件

安装WebView2插件
3.安装好后工具箱会多出一个WebView2控件,把控件拖到Form中使用即可

工具箱的WebView2控件
4.Source属性设置初始的页面,然后运行

Source属性

运行效果
如果运行出来是一个白框应该是运行时装错了,检查下是不是和操作系统同一个位数,如果装的是浏览器内核看下是不是Beta版。如果是一个灰框(就像是运行了控件不存在一样)暂时还没找到解决方法,可以按照相同步骤换一台电脑操作看是不是操作步骤的问题。
参考技术A 操作系统中未安装webview2:
1:打开软件
2:编辑所需要的信息
3:然后编辑好了之后确认,点击右上角的设置中心
4:在设置中心里面找到信息就可以了

带有devc ++的opencv中未定义的引用[重复]

【中文标题】带有devc ++的opencv中未定义的引用[重复]【英文标题】:Undefined reference in opencv with devc++ [duplicate] 【发布时间】:2016-05-27 01:46:19 【问题描述】:

我试图在我的 Windows 系统上安装带有 devc++ 的 opencv。我安装了 opencv,然后在 devc++ 中添加了一个新的编译器。

我在调用新的编译器部分时添加了以下命令

-L"C:\OpenCV\lib" -lcxcore210 -lcv210 -lcvaux210 -lhighgui210 -lml210

我为链接器命令行添加了以下命令

-lcxcore210 -lcv210 -lcvaux210 -lhighgui210 -lml210

我也添加了相应的 opencv 二进制文件、库和包含,并将 opencv/bin 添加到环境变量中。

但是,当我尝试运行以下 opencv 代码时,

#include <iostream>
#include <conio.h>

using namespace std;
#include "cv.h"
#include "highgui.h"
using namespace cv;

int main()

   cv::Mat img;

    getch();


它给出了以下错误。

[链接器错误] C:\Users\user\AppData\Local\Temp\ccGQvgqG.o:filename.cpp:(.text$_ZN2cv3Mat7releaseEv[cv::Mat::release()]+0x3f): 对 `cv::fastFree(void*)' 的未定义引用

【问题讨论】:

2016 年的 OpenCV 2.1.0?这是真的吗?无论如何,您是使用编译器编译 OpenCV 还是尝试使用预构建的 OpenCV 库?另外,这是 C 还是 C++? 我正在尝试使用预建库。这是 Opencv 2.10,因为我无法使 3.0 工作。它给出了同样的问题。 anikettatipamula.blogspot.com/2012/02/… 这个链接使用的是 2.10 版本,所以我认为这将是一个好的开始。 【参考方案1】:

不要使用 OpenCV 2.1.0

使用 OpenCV 2.4.13 或 3+。

正如您在documentation 中看到的那样:

预建库 [...] 仅在您使用最新的 Microsoft Visual Studio IDE 进行编码时才有效。

如果您想使用 Visual C++ 以外的其他编译器,您必须自己构建 OpenCV 库。一个好的开始是tutorial。请小心,因为它们“已经过时且包含不准确的信息”。

【讨论】:

以上是关于操作系统中未安装webview2的主要内容,如果未能解决你的问题,请参考以下文章

跨平台桌面开发,Electron还是WebView2 (中篇)

检测客户端机器上是不是安装了 WebView2 (VB.NET)

WebView2:如何启用密码自动填充?

WebView2 控件不在工具箱中

如何在Visual Studio工具栏中添加WebView2控件?

WebView2 (WPF) - 从本地文件夹加载网站并调用 C# 函数并调用 JS 函数