بهار آموزش با تخفیف های شگفت انگیز توسینسو بهار آموزش با تخفیف های شگفت انگیز توسینسو
مانده تا پایان تخفیف
مشاهده دوره ها
0

فعال کردن سرویس sql server در ویندوز فرم csharp

سلام خدمت همگی ، گاهی وقتا پیش میاد که سرویس اصلی sql server غیرفعال(stop) میشه و باید در قسمت سرویس های ویندوز دوباره اونو start کرد (MSSQLSERVER) این کار دستی برای یه سری از مشتریان برنامه های ویندوز فرمی کار سختیه ، اکثرا به خاطر همچین چیزی ناراحتن به خصوص مواقعی که برا مشتری مجبور میشی نسخه کامل sql رو نصب کنی ، من کدهام رو به بهترین روش ممکن نوشتم ولی نمیتونم این مورد رو هم چک کنم!! آیا راهی هست که بشه تو برنامه های ویندوز فرمی به زبان سی شارپ اگه برنامه نتونست به sql متصل بشه (بخاطر غیرفعال شدن سرویس MSSQLSERVER) بیاد سرویس رو خودش start کنه؟ در مورد سوال یا جایی که سوال رو پرسیدم یا تکراری بودنش لطفا عفو کنید

پرسیده شده در 1395/02/20 توسط

2 پاسخ

1

سلام به شما Itpro ای عزیز.

برای این کار شما از کد زیر استفاده کنید.

public static void StartService(string serviceName, int timeoutMilliseconds)
{
  ServiceController service = new ServiceController(serviceName);
  try
  {
    TimeSpan timeout = TimeSpan.FromMilliseconds(timeoutMilliseconds);

    service.Start();
    service.WaitForStatus(ServiceControllerStatus.Running, timeout);
  }
  catch
  {
    // ...
  }
}

دقت داشته باشید که برای service name از اسم سرویس مورد نظر مثل MSSQLSERVER بنویسید و timeoutMilliseconds را حدود 5000 میلی ثانیه قرار دهید

پاسخ در 1395/02/20 توسط
1

آقای عادلی عزیز

متدی که معرفی کردین دقیقا همونی هست که نیاز داشتم

خیلی ممنون

اگه کسی خاست از این کد استفاده کنه باید یه dll رو به صورت دستی به پروژتون اضافه کنین در غیر این صورت جواب نمیده

System.ServiceProcess

و در فرمی که نیاز دارین ازش استفاده کنین

پاسخ در 1395/02/20 توسط

پاسخ شما