我们有什么方法可以通过编程方式找到是否安装了SQL Compact ...实际上我需要知道是否在PC中安装了紧凑版本,以便我可以包含或排除SQL Compact dll ...因为在我的应用程序中有不同的进程访问相同的.sdf文件,如果包含这些dll并安装了压缩程序,将导致访问冲突错误...
有什么想法吗?
答案 0 :(得分:0)
执行此操作的最佳方法是使SQL Compact成为安装过程的要求,如果未安装,则告诉用户需要安装它。您可以通过在发布部分将其设置为先决条件来添加检查您的项目属性。您可以通过检查SC的默认安装路径来手动编码,但这不是最可靠的方式。
答案 1 :(得分:0)
我认为注册表检查非常可靠。
reg query "HKLM\SOFTWARE\Microsoft\Microsoft SQL Server Compact Edition\v3.5"
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server Compact Edition\v3.5 InstallDir REG_SZ C:\Program Files\Microsoft SQL Server Compact Edition\v3.5\ Version REG_SZ 3.5.5692.0 NativeDir REG_SZ C:\Program Files\Microsoft SQL Server Compact Edition\v3.5\ ServicePackLevel REG_DWORD 0x1 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server Compact Edition\v3.5\ENU HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server Compact Edition\v3.5\GAC
您没有提到您正在使用的编程语言,但如果您想从.NET执行此操作,请使用Microsoft.Win32.Registry API。