1

Microsoft SQLCompactEditionを使用するアプリがあります。私はMSDNに従い、次の場所で説明されているDLLを展開しました:http://msdn.microsoft.com/en-us/library/aa983326%28VS.80%29.aspx

これらのDLLをインストーラーに含めることは、これまでうまく機能していました。

現在、英語以外のバージョンのWindowsにアプリをインストールしようとしています。英語以外のWindows7は正常に動作しますが、英語以外のWindows XP SP3(特にポルトガル語)では、アプリがデータベースに接続しようとするとクラッシュします。

エラーは次のとおりです。

DLL'sqlceme35.dll'を読み込めません:Falhanainicializaçãodoaplicativodevidoaconfiguraçãoincorreta。reinstalaçãodoaplicativopoderesolveroproblema。(HRESULTからの例外:0x800736B1)

...はい、ポルトガル語です。Googleはそれを次のように翻訳します:

設定ミスにより、アプリケーションの初期化に失敗しました。アプリケーションを再インストールすると、問題が解決する場合があります

MSDNページで推奨されている他のアプローチを採用し、ポルトガル語版のSQLCompactEditionを手動でインストールする場合。すべてが再び正常に動作します。ただし、これは避けたいソリューションです。これは、インストーラーを使用してすべての言語のSQL CEインストーラーを配布するか、言語ごとに異なるインストーラーを使用することを意味するためです。大きな痛み。

Windowsの国際バージョン用にコピーできる他のDLLはありますか?このDLLのリストをどこで見つけることができるか考えていますか?

ご協力いただきありがとうございます!

4

1 に答える 1

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に依存しているためです。これは、前提条件として既にインストールされている.NetFramework4.0に含まれています。

  2. SQL CE 3.5で使用されているDLLを見つけて、インストーラーにコピーしてもらいます(不可能な場合があります)

  3. インストーラーと一緒にVisualC++ランタイム2005をインストールします。(あまり良いインストーラーではなく、すべての言語を持っているわけではありません)

  4. Visual C ++ Runtime 2005(より優れたインストーラー)を備えているため、4.0と一緒に.Net3.5をインストールします。

オプション1がおそらく最良ですが、3.5から4.0に移行するには、私たちの側でいくらかの作業が必要になります。他のすべてのオプションは回避策ですが、問題を修正する必要があります。

于 2012-12-11T15:36:42.710 に答える