将Microsoft SQL Compact Edition部署到非英语Windows XP计算机。

时间:2012-12-10 20:41:35

标签: .net sql-server-ce

我有一个使用Microsoft SQL Compact Edition的应用程序。我已经关注了MSDN并部署了http://msdn.microsoft.com/en-us/library/aa983326%28VS.80%29.aspx

中描述的DLL

将这些DLL与安装程序一起使用效果很好......直到现在。

现在我正在尝试在非英语版本的Windows上安装该应用程序。非英语Windows 7工作正常,但使用非英语Windows XP SP3(特别是葡萄牙语),只要应用程序尝试连接数据库,我就会崩溃。

错误是:

  

无法加载DLL的'sqlceme35.dll':Falhanainicializaçãodoaplicativo devidoaconfiguraçãincororreta。重新安装o aplicativo pode resolver o problema。 (HRESULT异常:0x800736B1)

...是葡萄牙语。谷歌将其翻译为:

  

由于配置错误导致应用程序初始化失败。重新安装应用程序可能会解决问题

如果您采用MSDN页面上推荐的其他方法并手动安装葡萄牙语版本的SQL Compact Edition。一切都很好。但是,这是我想要避免的解决方案,因为这意味着使用我们的安装程序为每种语言分发SQL CE安装程序,或者为每种语言安装不同的安装程序。一个巨大的痛苦。

我是否可以为国际Windows版本复制其他DLL?知道我在哪里可以找到这个DLL列表吗?

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

感谢ErikEJ,你的建议让我意识到了我们的错误。

我们安装并使用.Net Framework 4.0,但无论出于何种原因我们都坚持使用SQL CE 3.5,并且由于大多数PC都预安装了Visual C ++ Runtime 2005,因此它很有效。

有几种方法可以解决这个问题:

  1. 使用MS SQL CE 4.0,因为它依赖于Visual C ++ Runtime 2008,它包含在我们已作为pre-req安装的.Net Framework 4.0中。

  2. 查找SQL CE 3.5使用的DLL并让我们的安装程序自行复制它们(可能无法实现)

  3. 安装Visual C ++ Runtime 2005以及安装程序。 (不是一个非常好的安装程序,并且没有所有语言)

  4. 安装.Net 3.5和4.0,因为它有Visual C ++ Runtime 2005(更好的安装程序)

  5. 选项1可能是最好的,但我们需要做一些工作,从3.5移动到4.0。 所有其他选项都是解决方法,但应解决问题。