SORU
7 EKİM 2008, Salı


Nasıl Windows bir Hizmet çalışıyorsa doğrulayabilirim

Bir 'watchdog' bu bir Windows Hizmeti olarak uygulanır. test C bir uygulama var# (2.0 XP üzerinde çalışan gömülü) Cihaz açıldığında, bu hizmet genellikle başlamak için biraz zaman alır. Eğer hizmet çalışıyorsa, benim kodu kontrol etmek istiyorum. Bunu nasıl yapabilirim?

CEVAP
7 EKİM 2008, Salı


Bu işe yarar gibi bir şey sanırım

Sistemi Ekleyin.Projeniz için ServiceProcess başvurularını (.NET sekmesi).

using System.ServiceProcess;

ServiceController sc = new ServiceController(SERVICENAME);

switch (sc.Status)
{
    case ServiceControllerStatus.Running:
        return "Running";
    case ServiceControllerStatus.Stopped:
        return "Stopped";
    case ServiceControllerStatus.Paused:
        return "Paused";
    case ServiceControllerStatus.StopPending:
        return "Stopping";
    case ServiceControllerStatus.StartPending:
        return "Starting";
    default:
        return "Status Changing";
}

Ayrıca istenen bir durum alır sc.WaitforStatus() ve bir zaman aşımı, hiç kullanılan bir yöntem Var ama sizin ihtiyaçlarınıza uygun olabilir. Edit:

Durumu tekrar durumu olsun sc.Refresh() ilk aramak gerekir Sonra. Edit:

Referans: ServiceController nesne .NET.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Joanna Okrajni

    Joanna Okraj

    4 EYLÜL 2010
  • nemoking of kinges

    nemoking of

    4 EYLÜL 2009
  • TheGamer2323

    TheGamer2323

    25 Ocak 2009