c++-winrt - 在 UWP 应用中,html 资源应该存储在 assets 目录中的什么位置?
问题描述
在使用 cppwinrt 的 UWP 应用程序中,我想使用 WebView 来显示保存在 Assets 文件夹中的书的内容。我读到有必要以这种方式引用 html 资产,以用作 Web 视图中 Navigate 方法的 Uri 参数:
TheWebView.Navigate(Uri(L"ms-appx-web:///SampleBook/PageOne.html"));
这会产生一个空视图,而
TheWebView.Navigate(Uri(L"ms-appx:///SampleBook/PageOne.html"));
崩溃。Msdn 说,对于“将被加载到 web 隔间”的文件,必须使用 ms-appx-web,我已经看到有人提到这是一个安全问题。但这是否意味着文件位于项目中的特殊位置 - 即不仅仅是在 Assets 文件夹中 - 还是仅意味着路径必须以独立于文件位置的 ms-appx-web 开头?“Web隔间”没有解释,但似乎不是位置,而是资源类型的分类。无论如何,上述方法都不起作用,所以我很想知道在包中存储和访问 html 文件集合的推荐方法。在资产文件夹中?资产中的特殊文件夹?在解决方案资源管理器中列出了 html 文件,“内容”为 True,并且该文件包含在项目中。谢谢。
解决方案
我的错误:ms-appx-web 没有指向 assets 文件夹,而是指向它的父文件夹。此类型内容的正确路径是 ms-appx-web///Assets/SampleBook/PageOne.html。对要“加载到 web 隔间”的材料的引用显然只是一种说法:要使用 WebViewer 加载的东西。
推荐阅读
- php - antonioribeiro/countries 如何删除“无用”条目?
- c# - 使用 .Net 中安装的邮件客户端发送电子邮件
- php - PostgreSQL 挂在带有可序列化事务的“回滚事务”上?
- javascript - 未找到对象的引用错误时的Javascript数组
- bash - Bash输出未重定向到文件
- javascript - 在对象上设置值的泛型类型而不指定键类型
- java - 我在哪里写 '{' 或 i++; 还是要得出以下结果?
- ballerina - 使用“constructFrom”方法将 json 转换为记录时出错
- javascript - Reactjs:如何根据其各自的ID执行编辑操作和打开模式
- vue.js - InstantSearch 缓存策略