Merhaba Değerli Arkadaşlar bu yazımda sizlere son iki yazımın devamı olan Windows Servislerini anlatacak ve Oluşturulan bir Windows Servisinin Sisteme nasıl yüklenildiğinden bahsedeceğim.

İşletim sisteminde arka planda koşmasını istediğimiz Windows servisleri hazırlandıktan sonra işletim sistemine entegre edilmesi lazım işte bu entegre etme işlemine installation işlemi diyoruz.Yani bir servisi sisteme yükledikten sonra artık Bilgisayar çalıştırıldığında işletim sisteminin arka bazında çalışacak ve kullanıcıdan bağımsız bir şekilde görevlerini icra edecektir.

Bir Windows servisinin sisteme yüklenmesi için ServiceProcess.ServiceInstaller ve ServiceProcess.ServiceProcessInstaller classlarını kullanmamız gerekiyor. Bu classların nesnelerini yüklemek için Servisimizin Design kısmına Sağ tıklayıp Add Installer Seçeneğini şekildeki gibi seçiyoruz.

Add Installer dedikten sonra Karşımızz ServiceProcessInstaller1 ve ServiceInstaller Adında iki class getirecektir işte onların design kısmındaki görünümü:

Şimdi sisteme yükleme kısmına geçelim.Sisteme yüklenmeden önce ServiceInstaller1 ın Properties Kısmında Şekildeki gibi ServiceName i ayarlamamız gerekiyor bu ServiceName Sizin yazdığınız Windows Servisinin sistem üzerindeki adı olacaktır.

Ardından yüklecek olan Servisin Account Özelliğinide ServiceProcessInstaller ın properties kısmından LocalSystem yapıyoruz Diğer özellikleride yapabiliriz tabi bu sizin seçiminize bağlı eğer servisininiz başlarken kullanıcı adlı şifre veya başka özellikler istiyorsanız diğer özellikleri Account kısmında seçebilirsiniz ben şekilde ki gibi kendi servisim için LocalSystem i seçtim.

Bu özellikleride ayarladıktan sonra servisimizi kaydettikten sonra Şimdi son aşama olarak hazır olan bu servisi sisteme Visual Studio 2010 veya 2008 in Install util aracıyla sisteme yüklüyoruz.Bunun içinde Visual Studio nun Command Prompt unu kullanıyoruz.Bunun için Başlattan All Programs Seçeneğine tıklayıp MicroSoft Visual Studio 2010 e gelip ordan Visual Studio Tools unu seçiyoruz şekildeki gibi:

Visual Studio 2010 command promptunu açtıktan sonra Yazdığımız Windows Servisinin Exe sinin bulunduğu yere gidiyoruz ve Exe sinin adresini ve Exe nin adını alıp Command propmt da InstallUtil komutuyla beraber kullanacağız işte Servisimizin exesinin bulunduğu yer ve alacağımız adresi:

Şimdi bununla beraber Visual Studio 2010 command propmt unu açıp içine sisteme yükleyeceğimiz komutun tam şeklini gösterelim.

Uyarı: Yukarıda Command Promptun içinde Error yazılan kısımda benim Command Promptu bulamadığının hatasını veriyor bu normal durumlarda olmadığı için siz komut satırındaki komutu aynen kendi command promtunuza yazarsanız hata vermeyecektir tabi sizin Visual Studionuzda benimki gibi yeni ve hala bazı toolları eksikse benim ki gibi hata verecektir.

Yukarıda Command Prompt tan da görüldüğü gibi Aşağıdaki InstallUtil komutunu icra edersek Servisimiz sisteme yüklenecektir.İşte InstallUtil in tam kullanım şekli:

InstallUtil “Servisin Exesinin Tam adresi” ServisinAdı.exe

Böylece Windows Servisinin hazırlanması oluşturulması ve yüklenmesiyle alakalı yazdığım son yazınında sonuna gelmiş bulunmaktayım umarım faydalı bir yazı olmuştur.Sorularınız olursa beklerim.Şimdiden herkesin Mübarek Kurban Bayramını Tebrik ederim Esen kalmanız dileğiyle Hoşçakalın…

Mehmet Salih Deveci

Bilgisayar Mühendisi

Reklamlar
yorum
  1. Enes KILIÇ dedi ki:

    Ben bunu inceledim ama denedim yapmayı bişi anlamadım birşeyler eksik ama ney.. Visual Studio 2010 command propmt kısmına giriyorum orda bitio bişi olmuo başka… :)) yardımınızı bekliyorum

    • BİLGİSAYAR MÜHENDİSİ dedi ki:

      Enes bey tam olarak ne durumda olduğunuzu belirtirseniz size yardımcı olabilirim…

      • Esma dedi ki:

        Merabalar,ben bi servis oluşturdum,fakat bunu yükleyemedim.Yazınızda nasıl yüklendiğni anlatmışsınız, aynen denedim. Ama VS 2008 Command Promt kısmına geldiğimde; belirttiğiniz gibi ——-InstallUtil “Servisin Exesinin Tam adresi” ServisinAdı.exe——- yazmama rağmen,şöle bi hata veriyor ve yüklemiyor.
        System.IO.FileNotFoundException: Could not load file or assembly
        ‘file:///C:\………………’ or one of its dependencies.Access is denied.

        Ne yapmam lazım acaba? Şimdiden teşkkürler…

      • BİLGİSAYAR MÜHENDİSİ dedi ki:

        Esma hanım belirtilen hata yüklenecek olan servisin exe sinin tam adresinin doğru olmadığını söylüyor bu noktada hata yapmışsınız…

  2. hasan dedi ki:

    ben de yükledim ama uygulamamı Services kısmında göremiyorum ve debug etmeye kalktığımda yine aynı uyarı mesajını veriyor,…..installutil.exe kullanılarak yüklenmeli… mesajını almaktayım

  3. Barış dedi ki:

    Konu bayağı eski fakat Esma hanımın aldığı hatayı alanlar icin yazıyorum:
    C# ile yazdığınız servis exesini C:\ ye kopyalayın Command Prompt ile “cd..” yaparak C’ye kadar gelin.
    Örneği: InstallUtil WindowsService1.exe
    bunu yazın sorunsuz kurulum gerçekleşir.

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Connecting to %s