我试图通过使用以下代码在ComboBox中登记所有SQL Server实例(本地和网络):
DataTable dt = null;
dt = System.Data.Sql.SqlDataSourceEnumerator.Instance.GetDataSources();
foreach (DataRow dr in dt.Rows)
{
ComboBox1.Items.Add(dr[0].ToString() + "\\" + dr[1].ToString());
}
Run Code Online (Sandbox Code Playgroud)
通过在组合中登记我的所有本地和网络sql server实例,它在Windows XP 32位,Windows 7 64位上运行正常,但是当这段代码在Windows 7 32位(所有专业版)上运行时,需要很长时间才能获取实例细节,最终甚至无法招募单个实例(我相信由于某种TimeOut).在这种情况下,数据表甚至没有一行.因此,我想问以下问题:
此问题是特定于平台还是特定于操作系统?
这真的是由于网络速度慢/大没有.网络上的服务器实例?
是否有任何替代此要求,而不是平台或框架依赖
SmoApplication.EnumAvailableSqlServers(假); //本地和网络SQL实例
是framewrok依赖.
我有至少17-20的SQL Server网络服务器,我希望这个功能返回.因此我无法理解这是怎么发生的?我在Windows 7 32位(专业版)上遇到了这个问题.
谢谢
Hemant Jaiswal
我正在使用安装程序类开发Windows安装程序项目.我在安装之前打开Windows表单并成功打开.我想打开此表单作为最顶层的表单,但它在Windows 7上的安装向导后面打开.
在安装过程中,此窗体在Windows XP上成功打开,作为最顶层的窗体.问题仅出现在Windows 7上.
我使用以下代码在我的安装程序类中打开该表单:
namespace MyApp
{
[RunInstaller(true)]
public partial class DbInstallerClass : Installer
{
public DbInstallerClass()
{
InitializeComponent();
Form frm = new DBInstallerForm();
frm.TopMost = true;
frm.ShowDialog();
}
}
}
Run Code Online (Sandbox Code Playgroud)
这个问题平台是特定的还是特定于OS的?