在Visual Studio 2013 Update 2上安装SQLite.WP81扩展SDK后,SQL Phone for Windows Phone程序集不会出现在Windows Phone 8.1选项卡的扩展列表中。
对SQLite for Windows Phone 8.1 download page in the Visual Studio Gallery进行了讨论,其他开发人员似乎也遇到了同样的问题。另一位开发人员建议手动安装扩展程序,但这没有任何区别。 (而且这个建议似乎很可疑,因为看起来这个扩展现在安装在C:\ Program Files(x86)\ Microsoft SDKs \ WindowsPhoneApp \ v8.1 \ ExtensionSDKs \ SQLite.WP81 \ 3.8.6)
似乎扩展程序未能将自身注册为使用Visual Studio的扩展SDK。
有想法如何解决这个问题的人?
编辑:事情有所进展
我将SQLite.WP81文件夹从C:\ Program Files(x86)\ Microsoft SDKs \ WindowsPhoneApp \ v8.1 \ ExtensionSDKs \ SQLite.WP81 \移动到C:\ Program Files(x86)\ Microsoft SDKs \ Windows Phone \ v8.1 \ ExtensionSDKs \ SQLite.WP81 \,更新了\ SQLite.WP81 \ 3.8.6 \ extension.vsixmanifest和\ SQLite.WP81 \ 3.8.6 \ DesignTime \ CommonConfiguration \ neutral \ SQLite中的路径.WP81.props文件反映新位置和包出现。
这在同一时间很奇怪。手动黑客攻击SDK似乎很奇怪。但这是进步。
现在,问题是SQLite.WP81需要一些名为Microsoft.VCLibs的SDK,它不会出现在资源管理器中。到目前为止,搜索网络一直没有结果。
有没有人知道在哪里可以找到Microsoft.VCLibs?
答案 0 :(得分:6)
VS2013 U3与我的项目之间存在分歧。出于某种原因,将此项目升级到Windows Phone Silverlight 8.1后,VS2013 U3将不会显示任何适用于Windows Phone 8.1的扩展SDK。
我使用XML编辑器包含对项目的.csproj文件的以下引用。
<ItemGroup>
<SDKReference Include="SQLite.WP81, Version=3.8.6">
<Name>SQLite for Windows Phone 8.1</Name>
</SDKReference>
</ItemGroup>
<ItemGroup>
<SDKReference Include="Microsoft.VCLibs, Version=12.0">
<Name>Microsoft Visual C++ 2013 Runtime Package for Windows Phone</Name>
</SDKReference>
</ItemGroup>
阻止我的项目工作的另一个问题是我在项目之间使用了不同的sqlite.winmd文件。该应用程序将构建和部署,但在运行时应用程序将崩溃。调试日志中的一些消息说SQLite未注册。 (对不起,没有记下实际的消息。)通过我的所有项目,对sqlite.winmd进行相同的引用,最终让应用程序在WP8.1上运行。
希望这可以防止其他人浪费几天。
答案 1 :(得分:1)
尝试进入您的驱动器并使用搜索栏查找正确的扩展名.dll抓取结果的最新日期,看看是否有效。
答案 2 :(得分:0)
好的,这是我设法做的(但我仍然无法编译)
我安装了WP 8.0版本的sqlite,我可以在WP 8.1项目中引用它。我卸载了项目,打开了csproj文件,我将WP8.0的引用更改为WP8.1。之后我得到了正确的sdk,但VS抱怨Microsoft.VCLibs。我能够通过再次手动编辑csproj并添加此片段来解决这个问题:
<ItemGroup>
<SDKReference Include="Microsoft.VCLibs, Version=12.0">
<Name>VCLibs</Name>
</SDKReference>
</ItemGroup>
正好位于类似sqlite代码段的下方。在此之后VS不再抱怨VCLibs。但是当试图使用sqlite-net包装器时,它无法识别Sqlite命名空间,我猜这是一个不好的标志。