提问人:Adeleke Oluwasesan 提问时间:6/3/2023 最后编辑:jmcilhinneyAdeleke Oluwasesan 更新时间:6/3/2023 访问量:129
无法在 WebView2 上的 HTMLBody 中查看嵌入的图像
Unable to view embedded images in HTMLBody on WebView2
问:
我正在尝试将电子邮件从 Microsoft Outlook 读取到 WinForms(VB.NET) 应用程序中。我可以从 Outlook 加载电子邮件,然后在 Webview2 中显示 HTMLBody,但图像显示一个损坏的图标。HTMLBody 中的图像似乎是嵌入的,其格式如下:
<img border=0 width=89 height=49 style='width:.9236in;height:.5069in' id="Picture_x0020_3" src=cid:[email protected]>
我已经使用了许多已经显示的解决方法,即使用 .我的代码如下所示:SetVirtualHostNameToFolderMapping
' Get the email body as HTML content
Dim htmlBody As String = selectedMailItem.HTMLBody
' Create a new local folder to store the HTML content
Dim folderPath As String = "C:\Temp\"
Directory.CreateDirectory(folderPath)
' Create a unique file name for the HTML content
Dim fileName As String = Guid.NewGuid().ToString().Substring(0, 5) + ".html"
Dim filePath As String = Path.Combine(folderPath, fileName)
' Save the HTML content to the local file
File.WriteAllText(filePath, htmlBody)
' Map the virtual host name to the local folder
Await webView.EnsureCoreWebView2Async(Nothing)
' MsgBox(folderPath)
webView.CoreWebView2.SetVirtualHostNameToFolderMapping("localhost", folderPath, CoreWebView2HostResourceAccessKind.DenyCors)
' Load the HTML content into the WebView control
Dim c_nav As String = (http://localhost/ + fileName)
'webView.CoreWebView2.Navigate(c_nav)
webView.Source = New Uri(c_nav)
我决定将其保存在一个临时文件中,我计划实施一种立即删除的方法。我尝试使用 .NavigateToString,它显然不起作用,因为它不支持额外的 Web 资源。对于 CoreWebView2HostResourceAccessKind.DenyCors,我尝试了 .allow 和 .拒绝,我仍然得到了损坏的图像图标。有没有其他可以尝试的解决方法,或者我做错了?
我期待图像能够正确加载
答: 暂无答案
评论
localhost
app.example
.example