【发布时间】:2013-03-25 01:59:57
【问题描述】:
我正在创建一个 Windows 8 应用商店应用程序。这个应用程序的前端(主项目)是 HTML5/Javascript。我正在关注 this guide by Tim Heuer 创建一个 C# WinRT 组件,该组件包装 SQLite 调用并充当控制器。前端通过Javascript调用该组件,更新数据,获取展示内容。
所以我的解决方案中有 2 个项目,javascript 中的“main”和 C# 中的“db”。我已经设法让 SQLite 根据指南工作。我有这种结构的原因是我试图将应用程序从 iOS 移植到 Win8。 “控制器”部分从一开始就是一个独立的组件,并且已经移植到 C#。
但是,有一个警告。由于this known problem,我必须从“db”项目中删除对C++ Runtime v11 的引用以使其可编译。虽然它在开发机器上运行良好。
然后我得到了这台测试机(准确地说是三星 xe700t1a,Intel i5),我发现在这台测试机上“调试远程”时,Visual Studio 不会部署 SQLite3。结果,我的 SQLite 调用失败并出现错误:"Unable to load DLL 'sqlite3': The specified module could not be found. (Exception from HRESULT: 0x8007007E)"。
根据我之前提到的指南,SQLite 是通过 WinRT 扩展提供的,目的是使部署自动化。
我想知道为什么会发生这种情况以及如何使其正确?我还想知道这种结构中的应用程序的 Windows 应用商店是否存在任何认证问题?
我还遇到了this post 和this post,这表明目前无法在 WinRT 组件中使用 SQLite。但是我现在改变已经太迟了,如果没有混合结构,这个项目是不可能的。
【问题讨论】:
-
另外说明,由于访问
C:\Program Files\WindowsApps文件夹有限制,远程调试时我什至不知道我的应用部署了什么。 -
您可以以管理员身份打开命令提示符并手动导航到 WindowsApps 文件夹。如果您执行 Dir 或使用文件资源管理器,您将不会看到它列出。
-
@JimWooley,谢谢。但它看起来不像 RemoteDebugger 在那里部署我的应用程序。找不到对应的文件夹。
标签: c# sqlite windows-8 windows-runtime windows-store-apps