3

我下载了 64 位 Windows SQLite 安装程序可执行文件以安装在我的 Windows 7 x64 机器上:

       sqlite-netFx40-setup-bundle-x64-2010-1.0.78.0.exe 
      (11.60 MiB)   

并运行设置。它因以下错误而失败:

      Could not open 
      HKEY_LOCAL_MACHINE\Software\Microsoft\.NET Framework\v4.0.30319\AssemblyFoldersEx

“v4.0.30319”下面没有“AssemblyFoldersEx”键。所以我在那里创建了密钥并重新运行了设置,这次完成没有错误。

但是,当我尝试添加引用时,System.Data.SQLite 不会出现在 .NET 选项卡上的组件列表中。

下一个故障排除步骤是什么?谢谢

4

2 回答 2

1

由于VS2010isWin32和 not x64,您需要安装Win32设置以获得设计时支持。您仍然可以将x64二进制文件与您的应用程序一起使用,这Win32只是VS 集成所需要的。

于 2012-05-31T09:13:37.223 回答
1

是的,您需要安装 Win32 SQLite 以获得设计时支持;下载并执行 32 位安装程序 (sqlite-netFx40-setup-bundle-x86-xx.xxxexe) 后,如果您仍然遇到相同的错误,您可以运行 VS 设计器组件 32 位安装程序,而无需通过以下步骤检查选项:

  1. 打开 Visual Studio 命令提示符。
  2. 切换到“System.Data.SQLite\2010\bin”安装目录。
    例如:CD D:\Programs\System.Data.SQLite\2010\x86\bin\
  3. 运行以下命令:
    corflags /32BIT+ /Force Installer.exe
    sn -k System.Data.SQLite.snk
    sn -Ra Installer.exe System.Data.SQLite.snk
    Installer.exe -install tr​​ue -installFlags AllExceptGAC -tracePriority Lowest -verbose true -noCompact true -noNetFx20 true -noVs2008 true -whatIf false -confirm true

命令解释:

  • corflags /32BIT+ /Force Installer.exe
    使用“corflags”工具(.NET SDK 的一部分),将“Installer.exe”工具标记为仅 32 位
  • sn -k System.Data.SQLite.snk
    生成任何强名称密钥对(任何密钥对 SNK 文件都可以在这里使用)
  • sn -Ra Installer.exe System.Data.SQLite.snk
    使用上面生成的强名称密钥对重新签署“Installer.exe”程序集
  • Installer.exe -install tr​​ue -installFlags All... -confirm true
    运行带有必要标志的安装程序,但最重要的是放入'-confirm true';因为这是 SQLite 安装程序所需的标志,它可以防止用户通过直接在 Windows 资源管理器中单击 installer.exe 来执行设置。
于 2013-04-08T04:30:46.570 回答