4

SQL Server CE 4.0 のインストールが必要なアプリケーションを開発しています。

私はすべての作業を Windows 7 64 ビットで行っているため、SQL Server CE 4.0 64 ビットをインストールしました。

アプリケーションまたはインストーラーを起動するときに、SQL Server CE 4.0 32 ビット/64 ビットがインストールされているかどうかを確認するにはどうすればよいですか?

一般的にどのアプローチですか?

手がかり、記事などはありますか?

ありがとう!!

PS このリンクを読みましたSQL Server 2005 (3.1) Compact Edition (CE) がインストールされているかどうかを InstallShield で確認する方法はありますが、役に立ちません。

4

1 に答える 1

5

必要なすべてのファイルをアプリに含めるだけで、x86 と x64 の両方で実行されます。次のブログ記事を参照してください: http://erikej.blogspot.com/2011/02/using-sql-server-compact-40- with.html

以下のコードを使用して、ランタイムがアプリで利用可能かどうかを検出することもできますが、上記を実装する場合は必要ありません。

        public bool IsV40Installed()
    {
        try
        {
            System.Reflection.Assembly.Load("System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91");
        }
        catch (System.IO.FileNotFoundException)
        {
            return false;
        }
        try
        {
            var factory = System.Data.Common.DbProviderFactories.GetFactory("System.Data.SqlServerCe.4.0");
        }
        catch (System.Configuration.ConfigurationException)
        {
            return false;
        }
        catch (System.ArgumentException)
        {
            return false;
        }
        return true;
    }
于 2012-05-10T14:52:09.177 に答える