View Full Version : سوال: گرفتن نام سرو های موجود داخل سیستم
hercool
شنبه 20 مهر 1392, 00:35 صبح
سلام دوستان
یه سوال دارم
چطور می تونم لیست سرور های sql سیستم رو بگیرم بدون اینکه برم بگردم بصورت دستی کدش چی هست ممنون میشم راهنماییم کنید
و دومین سوال ایا میشه نام سرور رو به کل عوض کرد؟
Reza_Yarahmadi
شنبه 20 مهر 1392, 08:59 صبح
میتونید بصورت زیر عمل کنید
using Microsoft.SqlServer.Management.Smo.Wmi;
....
ManagedComputer mc = new ManagedComputer();
foreach (ServerInstance si in mc.ServerInstances)
{
Console.WriteLine("The installed instance name is " + si.Name);
}
esafb52
شنبه 20 مهر 1392, 09:38 صبح
من قبلا میخواستم این کار رو بکنم از طریق ریجستری اطلاعات سرورها رو بگیری خیلی سرعت بیشتری نسبت به این روش داره
veniz2008
شنبه 20 مهر 1392, 18:56 عصر
سلام.
برای دریافت لیست Instance ها با استفاده از ریجیستری می تونید از قطعه کد زیر استفاده کنید :
List<string> listOfInstances = (Microsoft.Win32.Registry.LocalMachine.OpenSubKey(
@"SOFTWARE\Microsoft\Microsoft SQL Server").GetValue("InstalledInstances", "SQLSERVER IS NOT INSTALLED") as string[]).ToList();
listBox1.Items.AddRange(listOfInstances.ToArray()) ;
دقت کنید که پروژه رو در حالت AnyCpu اجرا کنید :
111791
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.