【问题标题】:Avoid UserDataFolder for MS edge (webview2)避免 MS 边缘的 UserDataFolder (webview2)
【发布时间】:2020-10-19 19:25:11
【问题描述】:

在我的应用程序中,我正在使用 CreateCoreWebView2EnvironmentWithDetails 创建 Edge 环境。现在它正在我的 exe 旁边创建一个文件夹作为“myexe .WebView2”,这是我不想要的。 所以我将“C:\Users\username>\AppData\Local\MicrosoftEdge 作为 UserDataFolder 传递。 但它仍然在我的应用程序文件夹中创建一个空文件夹“Myexe.webview2”。

这是展示我如何传递参数的示例。

HRESULT hr = CreateCoreWebView2EnvironmentWithDetails(folderName, L"C:\\Users\\<myUSer>\\AppData\\Local\\MicrosoftEdge",  NULL,     Callback<ICoreWebView2CreateCoreWebView2EnvironmentCompletedHandler>

我知道当为 UserDataFolder 传递 NULL 时,edge 在应用程序本地文件夹中创建一个文件夹作为默认位置。但在这里我给出了 UserDataFolder 的位置。

所以问题是:

为什么当我传递“userDataFolder”时,它会在默认位置创建一个名为“myexe.WebView2”的空文件夹?

我应该怎么做才能避免这种情况?

更新: 我们使用这个版本已经有一段时间了。将来会升级到最新版本。 目前,代码使用 CreateCoreWebView2EnvironmentWithDetails。

【问题讨论】:

  • 由于CreateCoreWebView2EnvironmentWithDetails 已被弃用并替换为CreateCoreWebView2EnvironmentWithOptions,也许您可​​以在那里找到解决方案?
  • 好吧,如果您坚持使用已弃用的版本,那么您必须接受它的限制。其实他们今天已经发布了第一个非预览版,建议你升级一下。
  • 如果这是一个限制,我可以接受。我想确保我没有错过任何 API 调用或忘记设置某些内容,这可能导致创建空文件夹
  • 好吧,我没有看到它使用新版本,所以你可以称它为旧版本中的错误。无论如何,升级时您还必须进行其他更改。

标签: c++ c webview2


【解决方案1】:

你描述的是一个错误。如果您在最新的 SDK 中仍然看到此行为,请针对我们的WebView2 feedback GitHub repo 提出问题,我们可以对其进行调查。谢谢!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-12-07
    • 1970-01-01
    • 1970-01-01
    • 2015-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多