1

我开始使用 System.Data.SQLite 和“SELECT load_extension("path/to/zumero.dll")”,但目前正在使用 SQLite Windows shell,因为我认为我做错了。当我尝试在 C# 世界中加载扩展时,我在 shell 中遇到了同样的错误。

sqlite> .load "windows\ext\x64\zumero.dll";
Error: The specified module could not be found.

指定绝对路径会导致相同的错误消息。当我使用依赖项步行器打开它时,显然缺少以下依赖项:

API-MS-WIN-CORE-COM-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-ERROR-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-ROBUFFER-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-STRING-L1-1-0.DLL
API-MS-WIN-SHCORE-SCALING-L1-1-0.DLL
DCOMP.DLL
IESHIMS.DLL

我觉得我一定是在这里做错了(对 WinRT 的依赖似乎很奇怪),但看不出是什么。“最终游戏”是在 Win Server 2008 R2 机器上拥有一个 C# Web 应用程序,该应用程序将数据写入 Zumero SQLite 实例,该实例会同步到许多移动设备。

干杯

4

1 回答 1

1

我立即重现了您的问题,并且有一段时间有“一定是做错了什么”的感觉,因为我知道这已经在早在 XP 的系统上进行了测试。原来这是\字符串中的反斜杠问题(ugh);SQLite 使用它们进行转义。只需使用正斜杠/,或将它们加倍\\。我将在自述文件中添加一个明确的注释。

我同意 WinRT 依赖项乍一看似乎很奇怪。看起来它们最终都是 Zumero 依赖wininet.dll. WinRT DLL 位于系统模块(如shell32.dll. 有趣的是它们在系统中的深度,尽管我想最终这并不太令人惊讶。

于 2013-09-05T14:05:32.573 回答