自从获得最新 (3.7.15.1) 版本的 SQLite 后,我有两个应用程序在编译时出现问题。
直到今天早上,第二个一直“处于次要状态”,所以直到现在我才注意到它。
在尝试编译时,我得到:“找不到 SDK “SQLite.WinRT,版本 = 3.7.15.1”。
引用列表确实显示我安装了“SQLite for Windows Runtime”。
不过,我刚刚意识到,这些属性是:
(Name) SQLite for Windows Runtime
Fiel Type SDK
Identity SQLite.WinRT, Version=3.7.15.1
Path [blank]
Resolved False
Version 0.0.0.0
最后三个可能是问题(没有路径,未解决,没有版本信息)。所以不知何故,显然,安装时没有添加路径等。那么 Windows 运行时的 SQLite 的文件名是什么,这样我就可以搜索它的位置并手动将其添加到路径中(此时也有望添加已解决和版本信息)。
更新
我在这里找到 sqlite3.dll:
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0\ExtensionSDKs\SQLite.WinRT\3.7.15.2\Redist\Debug\x86
这是要添加到路径的适当文件(sqlite3.dll)和位置吗?
更新 2
这个想法就这么多:“路径”属性不可编辑。
更新 3
仔细查看文件路径,我发现我安装的是 3.7.15.2,而不是 3.7.15.1。
我在“最近”中看到的三个可能的 SQLite 版本是 3.7.14、3.7.15 和 3.7.15.1。转到“扩展”选项卡后,我找到了 3.7.15.2。
它添加的路径是:C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0\ExtensionSDKs\SQLite.WinRT\3.7.15.2\(所以没有附加“\Redist\Debug\x86”)
最佳答案
我不能从你的问题中说你是否仍然有这个问题,但即使它现在对你有用,以下内容可能对偶然发现这个问题的人有用。
对 SQLite 的引用总是通过 Windows > Extension
添加。 Add Reference...
的一部分对话。添加引用时,它始终会添加到当时安装的 SDK 版本中。
SDK通过Extensions and Updates...
进行管理和更新对话框,包括新版本 SDK 可用时的通知。通过这种机制更新 SDK 后,旧版本的库将不再可用。仍然引用它的任何项目都将无法构建并出现您遇到的错误:
Could not find SDK "SQLite.WinRT, Version=#.#.#.#.
要解决此问题,您需要删除现有引用并通过
Add Reference...
重新添加它。对话。这样,引用将更新为您机器上可用的最新版本的库,并且项目将再次构建。当一个由多个开发人员组成的团队正在开发一个引用 SQLite 的项目时,此过程会产生副作用。一旦其中一个更新了 SDK 和项目中的引用并将此更改提交到源代码管理,所有开发人员都必须更新 SDK,然后才能再次构建项目。
也在
Windows > Recent
Add Reference...
的一部分即使在 SDK 更新到新版本后,您之前添加到项目中的旧版本 SDK 仍会列出。这意味着您仍然可以从此处添加它,但由于该库不再存在,因此它将无法工作。不幸的是,即使您尝试添加这些引用,Visual Studio 也不会从对话框中删除它们,也不会以任何其他方式警告您该问题,而不是失败的构建。不过,您可以自己从对话框中删除引用,方法是右键单击它并选择Remove from Recent References
。 .
关于sqlite - Windows Runtime 3.7.15.1 的 SQLite 文件名是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14463855/