4

我开发了一些需要安装 SQL Server CE 4.0 的应用程序。

我在 Windows 7 64 位下完成所有工作,所以我安装了 SQL Server CE 4.0 64 位。

当我启动应用程序/或安装程序时,如何检查是否安装了 SQL Server CE 4.0 32 位/64 位?

一般采用哪种方法?

任何线索,文章等?

谢谢!!

PS 我读了这个链接How can InstallShield check if SQL Server 2005 (3.1) Compact Edition (CE) 已安装但它没有帮助。

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 回答