1. Anasayfa
  2. C#

C# İle Windows Servis Geliştirme ve Setup Oluşturma – Bölüm 2


3

C# ile Windows servis geliştirme ve setup oluşturma. Bu yazımda sizlerle C# dilini kullanarak Windows servis uygulaması geliştireceğiz.

Windows servisleri kullanıcı arayüzü olmayan sistemimizde arka planda çalışan uygulamalardır. Servisimizi geliştirmeye başlamak için Visual Studio geliştirme ortamını açalım.

File>New>Project bağıntısını kullanarak projemizi oluşturmaya başlayalım.


Resim-1

Templates>Visual C#>Windows>Windows Service bağıntısını kullanarak proje şablonumuzu seçelim.


Resim-2

Proje şablonumuzu seçtikten sonra Name kısmında projemize isim verelim ve Location kısmında projenin bilgisayarımızda hangi konumda oluşturulacağını seçelim. OK tuşuna tıklayarak projemizi oluşturalım.


Resim3

Windows servislerinde kullanıcı arayüz tasarımı bulunmadığına dair uyarı almaktayız. Kodlama kısmına geçmek için click here to switch to code view bağlantısını tıklayalım.

Resim-4

Kodlama kısmında OnStart() ve OnStop() isimli iki adet metot bulunmaktadır.

OnStart: Windows servisi başlatıldığında servisin hangi işlemleri yapacağının belirlendiği kısımdır.

OnStop: Windows servisi durdurulduğunda hangi işlemleri yapacağının belirlendiği kısımdır.


Resim-5

Servis başladığında ve durdurulduğunda konsol ekranına uyarı veren kodlarımızı yazalım.


Resim-6

Visual Studio ortamında projeler Start tuşuna basılarak veya F5 tuşu ile çalıştırılırlar ancak Windows servislerini bu yöntem ile çalıştıramıyoruz. Bunun sebebi Windows servislerin işletim sistemimize yüklenmeden çalıştırılamamasıdır. Servisimize ServiceInstaller ekleyerek servisin sistemimize yükleneceği özellikleri belirleyelim.


Resim-7

Projemizi oluşturduğumuzda karşımıza gelen ilk ekranı açalım ve sağ tıklayarak Add Installer seçeneğiyle ServiceInstaller ekleyelim.


Resim-8

Eklemiş olduğumuz ServiceInsataller üzerinde sağ tıklayalım ve Properties seçeneğini seçelim.


Resim-9

Delayed Auto Start: Windows servisinin işletim sitemi başlatıldığında gecikmeli olarak başlamasını sağlayan seçenektir.

Description: Windows servisin hangi işlemi yaptığının açıklamasının yazıldığı kısımdır.

Display Name: Windows servisin işletim sistemimizde çalıştırıldığında görüntülendiği adıdır.

Start Type: Windows
servisin işletim sistemi başlatıldığında otomatik veya manuel başlatılmasının seçildiği kısımdır.

Servis özelliklerini ayarladıktan sonra servisimizi bilgisayarımıza yüklemek için setup projesi oluşturalım.


Resim-10

Solution üzerinde sağ tıklayalım ve Add>New Project bağıntısını izleyelim.


Resim-11

Other Project Types>Visual Studio Installer>Setup Project şablonunu seçelim ve Name kısmında projemize bir isim verelim. OK tuşuna tıklayıp projemizi oluşturalım.


Resim-12

Setup projemize sağ tıklayalım Add>Project Output seçeneğini seçelim.

Resim-13

Primary Output seçeneğini seçelim ve OK tuşuna tıklayalım.


Resim-14

Setup projemize sağ tıklayalım View>Custom Actions seçeneğini seçelim.


Resim-15

Custom Actions seçeneğine sağ tıklayalım ve Add Custom Action seçeneğini seçelim.


Resim-16

Karşımıza gelen ekranda Application Folder seçeneğini seçelim ve OK tuşuyla devam edelim.


Resim-17

Gelen ekranda Primary Output seçeneğini seçelim ve OK tuşuyla devam edelim.


Resim-18

Setup projemize sağ tıklayıp Build seçeneğini seçelim ve Setup projemizin oluşturulmasını sağlayalım. Projemiz oluşturulduktan sonra;


Resim-19

Projemize sağ tıklayarak Open Folder in File Explorer seçeneğini seçelim. Açılacak olan pencerede Debug klasörü altında projemiz yer almaktadır.


Resim-20

Setup dosyamızı herhangi bir bilgisayarda yükleyip servisimizi görüntüleyelim. Setup dosyamıza çift tıklayalım.


Resim-21

Next seçeneğiyle devam edelim.


Resim-22

Folder kısmında servisimizin bilgisayarımızda yükleneceği dizini seçebiliriz. Next seçeneğiyle devam edelim.


Resim-23

Servisimiz kurulurken eğer Domain User iseniz yani bir Server ortamında kullanıcınız oluşturulmuş ise bizden kullanıcı adı ve şifre bilgilerini istemektedir. Bulunduğunuz bilgisayarda admin yetkisiyle oturum açmış iseniz bu bilgi istenmez ve kurulum direk olarak yüklenir. Bilgileri girip OK tuşu ile devam ederek kurulumu tamamlayalım.

Kurulum işlemi tamamlandıktan sonra Başlat>Çalıştır>services.msc bağıntısını izleyerek;


Resim-24

Bilgisayarımızda kurulu olan servislerin yer aldığı ekranı açalım.


Resim-25

Servisimize çift tıklayalım ve servisi başlatalım.


Resim-26

Start seçeneğiyle servisimizi başlatalım. Servisimizi başlattıktan sonra servisimiz bilgisayarımız kapatılana kadar çalışacaktır. Eğer servisin bilgisayar açılışı ile birlikte otomatik başlamasını istiyorsak,

Startup Type kısmında Automatic seçeneğini seçmeliyiz.

Böylece windows servislerinin C# dili ile nasıl yazıldığını ve Setup projesi oluşturarak nasıl yüklenip çalıştırıldığını öğrenmiş olduk.

Bir sonra ki makalede görüşmek dileğiyle.

Bu konuyla ilgili sorularınızı  alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.

Referanslar

https://www.mshowto.org

Bu İçeriğe Tepkin Ne Oldu?
  • 7
    harika_
    Harika!!
  • 7
    be_enmedim
    Beğenmedim
  • 1
    _ok_iyi
    Çok iyi
  • 1
    sevdim_
    Sevdim!
  • 0
    bilemedim_
    Bilemedim!
  • 2
    olmad_
    Olmadı!
  • 0
    k_zd_m_
    Kızdım!

Servan Oral, 1991 yılında Diyarbakır’da doğdu. Üniversite öncesi öğrenimini Malatya’da tamamladı. Dicle Üniversitesi ve Atatürk Üniversitesi Bilgisayar Programcılığı mezunudur. .Net Developer olarak birçok firmada görev almıştır. MSHOWTO bünyesinde yazar olarak görev yapmaktadır. Uzmanlık alanları olan; Bilişim Güvenliği, Microsoft Azure, Microsoft Visual Studio, C# .Net, Asp.Net, Cloud Computing, Microsoft Azure SQL, Microsoft SQL Server, MVC .Net alanlarında yazarlık yapmakta ve etkinliklerde uzmanlık alanlarında konuşmacı olarak görev almaktadır. MCP sertifikası bulunmaktadır.

Yazarın Profili
İlginizi Çekebilir

Bültenimize Katılın

Tıklayın, üyemiz olun ve yeni güncellemelerden haberdar olan ilk kişi siz olun.

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Yorumlar (3)

  1. Hocam ilk önce böyle detaylı ve yalın olarak anlattığınız için teşekkür ederim.

    servisde yazılım güncellemesi geldiğinde nasıl bir süreç izleyeceğiz servisi güncellemek için

    teşekkürler

  2. 09/12/2022

    Hocam öncellikle merhaba ders için teşekkürler müsaade ederseniz sorum var servis başlattığımda nasıl bir sonuç alırsam doğru yapmış olurum

  3. 26/03/2024

    Hocam Merhaba;
    Resim 11 Adımına kadar geldim ama resimdeki sayfaya ulaşamadım.Normal nasıl yeni bir proje açılıyorsa o sayfa açılıyor.
    Konu ile ilgili yardımcı olabilirmisiniz?
    İyi Günler…

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir