C# Process Kullanımı - Csharp Eğitim Dünyası haber yazılımı

Top Ad unit 728 × 90

Konularımız

random
[post_ad]

C# Process Kullanımı

C# pictureBox Kullanımı

C# Process Kullanımı: İşlemleri Kolayca Yönetin

C# programlama dilinde, process sınıfı, işletim sistemindeki işlemleri (programlar) kontrol etmenizi sağlar. Bu makalede, C# process kullanımını inceleyeceğiz.



C# Process Nedir?

Process sınıfı, bir işlemin (programın) bellek, CPU ve diğer sistem kaynaklarını kullanımı hakkında bilgi edinmenizi ve bu işlemleri kontrol etmenizi sağlar. Bu sayede, programlarınızın işleyişini izleyebilir, hataları ve kaynak sızıntılarını tespit edebilir ve diğer işlemlerle etkileşime girebilirsiniz.



C# Process Nasıl Kullanılır?

Process sınıfını kullanmak için aşağıdaki adımları izleyebilirsiniz:

1. Process Nesnesi Oluşturmak:

 
  // Bir işletim sistemi işlemini temsil eden bir Process nesnesi oluşturun.
Process process = new Process();


C# Process Sınıfının Eventleri

Process sınıfı, işlemlerle ilgili çeşitli olayları tetikler. Bu olaylar, işlemin durumunu izlemek ve işlemlerle etkileşim kurmak için kullanılabilir. Aşağıda, C# Process sınıfının bazı önemli eventlerini görebilirsiniz:


  • ErrorDataReceived: İşlem standart hata akışına veri yazdığında tetiklenir.
  • Exited: İşlem tamamlandığında tetiklenir.
  • OutputDataReceived: İşlem standart çıkış akışına veri yazdığında tetiklenir.


2. İşlem Bilgilerini Ayarlamak:

Process nesnesinin StartInfo özelliğini kullanarak, başlatmak istediğiniz programın dosya adını, komut satırı argümanlarını ve çalışma dizinini belirleyebilirsiniz.

 
// Başlatılacak programın dosya adını ayarlayın.
process.StartInfo.FileName = "notepad.exe";

// Komut satırı argümanlarını ayarlayın.
process.StartInfo.Arguments = "/m \"Merhaba Dünya!\"";

// Çalışma dizinini ayarlayın.
process.StartInfo.WorkingDirectory = @"C:\Temp";



3. İşlemi Başlatmak:

Process nesnesinin Start yöntemini kullanarak işlemi başlatabilirsiniz.

 
// İşlemi başlatın.
process.Start();


4. İşlemle Etkileşim Kurmak:

Process nesnesi, işlemle etkileşim kurmanıza olanak tanıyan çeşitli özellikler ve yöntemler sunar. Örneğin, WaitForExit yöntemini kullanarak işlemin tamamlanmasını bekleyebilir, PriorityClass özelliğini kullanarak işlemin önceliğini ayarlayabilirsiniz.

 
// İşlemin tamamlanmasını bekleyin.
process.WaitForExit();

// İşlemin önceliğini yüksek olarak ayarlayın.
process.PriorityClass = ProcessPriorityClass.High;


C# Process Faydaları Nedir?

C# process kullanmanın birçok faydası vardır. Bunlardan bazıları şunlardır:

  • İşlemleri kontrol etmenizi sağlar.
  • Programlarınızın işleyişini izlemenizi sağlar.
  • Hata ve kaynak sızıntılarını tespit etmenizi sağlar.
  • Diğer işlemlerle etkileşime girmenizi sağlar.


C# Process Neden Kullanmalıyız?

C# process, programlarınızın işleyişini daha iyi kontrol etmenizi ve hata ayıklamanızı sağlar. Ayrıca, diğer işlemlerle etkileşime girmeniz gereken durumlarda da kullanışlıdır.



C# Process Özellikleri:

Process sınıfı, aşağıdakiler de dahil olmak üzere birçok özelliğe sahiptir:

  • Name: Progress Nesnesinin Adı.
  • EnableRaisingEvents: İşlemlerle ilgili olayların tetiklenip tetiklenmeyeceğini belirler.
  • GenerateMember: İşlemin üyelerinin otomatik olarak oluşturulup oluşturulmayacağını belirler.
  • Modifiers: İşlemin erişim belirleyicilerini belirler.
  • NonpagedSystemMemorySize64: İşlem tarafından kullanılan sayfalanmamış sistem belleğinin miktarı.
  • PageMemorySize64: İşlem tarafından kullanılan sayfalı belleğin miktarı.
  • PAgeSystemMemorySize64: İşlem tarafından kullanılan sayfalanmış sistem belleğinin sanal adres alanı miktarı.
  • PeakWorkingSet64: İşlem tarafından kullanılan en yüksek çalışma kümesi boyutu.
  • PrivateMemorySize64: İşlem tarafından kullanılan özel belleğin miktarı.
  • SessionID: İşlemin oturum kimliği.
  • StartInfo: İşlemin başlangıç bilgilerini içeren bir nesne.
  • VirtualMemorySize64: İşlem tarafından kullanılan sanal belleğin miktarı.
  • WorkingSet64: İşlem tarafından kullanılan çalışma kümesi boyutu.


C# Process StartInfo Özellikleri:

  • Arguments : Çalıştırılacak programa iletilecek komut satırı argümanları.
  • CreateNoWindow : İşlemin bir pencere ile başlatılıp başlatılmayacağını belirler. true ise pencere oluşturmaz.
  • Domain : İşlem için kullanılacak etki alanını belirler.
  • Environment : İşlem için kullanılacak ortam değişkenlerinin bir koleksiyonunu içeren bir IDictionary nesnesi.
  • EnvironmentVariables : İşlem için ortam değişkenlerinin bir koleksiyonunu içeren bir StringDictionary nesnesi.
  • ErrorDialog : İşlemde bir hata oluştuğunda bir hata iletişim kutusu gösterilip gösterilmeyeceğini belirler.
  • FileName : Çalıştırılacak programın dosya adı veya yolu.
  • LoadUserProfile : İşlem için bir kullanıcı profili yüklenip yüklenmeyeceğini belirler.
  • Password : Bu özellik şifre özelliğidir. Şifre gibi hassas bilgilerin doğrudan saklanması güvenli değildir.
  • RedirectStandardError : Standart hata akışının yeniden yönlendirilip yönlendirilmeyeceğini belirler. true ise yeniden yönlendirilebilir (örneğin, bir dosyaya yazılabilir).
  • RedirectStandardInput : Standart giriş akışının yeniden yönlendirilip yönlendirilmeyeceğini belirler. true ise yeniden yönlendirilebilir (örneğin, konsoldan okunabilir).
  • RedirectStandardOutput : Standart çıkış akışının yeniden yönlendirilip yönlendirilmeyeceğini belirler. true ise yeniden yönlendirilebilir (örneğin, bir metin dosyasına yazılabilir).
  • StandardErrorEncoding : Standart hata akışının kodlamasını belirler.
  • StandardOutputEncoding : Standart çıkış akışının kodlamasını belirler.
  • UserName : İşlem için kullanılacak kullanıcı adını belirler.
  • UseShellExecute : İşlemi, işletim sisteminin varsayılan kabuğu kullanarak mı yoksa doğrudan mı başlatacağını belirler. false ise doğrudan başlatılır.
  • Verb : Windows Forms uygulamaları için geçerli olan fiil.
  • WindowStyle : İşlemin pencerenin nasıl görüntüleneceğini belirler.
  • WorkingDirectory : İşlemin çalışma dizinini belirler.


C# Process Özellikleri Kullanım Örnekle

Process sınıfı, işlemleri kontrol etmenizi ve yönetmenizi sağlayan birçok özellik sunar. Aşağıda, bazı önemli özelliklerin nasıl kullanılacağına dair örnekler verilmiştir:




C# Process Kullanılan Argümanlar

Process sınıfı ile çalışırken, işlemi başlatmak için komut satırı argümanları kullanabilirsiniz. Bu argümanlar, işleme bilgi sağlamak veya davranışını değiştirmek için kullanılır. Argümanlar, StartInfo.Arguments özelliği aracılığıyla process nesnesine atanır.


Argüman Türleri:

C# process ile kullanılan argümanlar genellikle metin tabanlıdır ve iki şekilde kullanılabilir:

  • Pozisyonel Argümanlar: Bu argümanlar, sıraya göre belirlenir. Örneğin, process.StartInfo.Arguments = "arg1 arg2 arg3" şeklinde kullanılan ifadenin arg1 ilk, arg2 ikinci, arg3 ise üçüncü argüman olarak değerlendirilir.
  • İsimli Argümanlar: Bu argümanlar, anahtar kelime-değer eşleşmesi şeklinde belirlenir. Örneğin, /k "dir c:\" ifadesinde /k anahtar kelime ve "dir c:\" değer çiftini oluşturur.


Argüman Örnekleri:

Aşağıda, bazı yaygın argüman örnekleri verilmiştir:

  • /c: Belirtilen komutu çalıştırıp çıkan programı sonlandırır. (/c dir dizin listeler ve çıkar.)
  • /k: Belirtilen komutu çalıştırır ve komut penceresini kapatmaz. (/k dir dizin listeler ve pencereyi açık tutar.)
  • /wait: Belirtilen komut tamamlanana kadar bekler.
  • /d: Belirtilen dizinde çalıştırır. (/d C:\Windows systeminfo systeminfo komutunu C:\Windows dizininde çalıştırır.)
  • /m: Belirtilen metni yeni bir pencerede açar (Notpad.exe gibi metin editörleri için).
  • /h: Komutun yardım metnini gösterir.
  • /?: Komutun yardım metnini gösterir.
  • v: Komutun sürüm bilgisini gösterir.
  • /r: Belirtilen dosyayı çalıştırır.
  • /t: Belirtilen programı bir pencerede çalıştırır.
  • /i: Belirtilen programı bir pencerede çalıştırmaz.
  • dir /s: dir komutu /s argümanı ile birlikte kullanıldığında, tüm alt dizinleri de tarar.
  • /a: Belirtilen dosyaları veya dizinleri arşivler.
  • /e: Belirtilen dizini ve alt dizinlerini kopyalar.
  • /f: Belirtilen dosyaları siler.
  • /r: Belirtilen dosyaları veya dizinleri okur.
  • /t: Belirtilen dosyaları veya dizinleri tarar.
  • Sistem Bilgileri



  • /systeminfo: Sistem bilgileri görüntüler.
  • /tasklist: Çalışan görevlerin listesini görüntüler.
  • /perfmon: Performans izleyicisini başlatır.


  • Ağ İşlemleri:

  • /ipconfig: IP yapılandırmasını görüntüler..
  • /ping: Belirtilen IP adresine ping gönderir.
  • /tracert: Belirtilen IP adresine izleme rotası oluşturur.


  • Diğer

  • /help: Yardım metnini görüntüler.
  • /version: Sürüm bilgisini görüntüler.


Program Özel Argümanları:

Bazı programlar, kendilerine özgü argümanları da kabul eder. Bu argümanlar programın dokümantasyonunda bulunabilir. Örneğin, ping komutu /t argümanı ile birlikte kullanıldığında, belirtilen sayıda ping paketi gönderir.

Örnekler:

  • process.StartInfo.Arguments = "/c dir /s": C:\ dizinindeki tüm dosyaları ve alt dizinleri listeler.
  • process.StartInfo.Arguments = "/k ping www.google.com -t 5": Google'a 5 ping paketi gönderir ve komut penceresini açık tutar.
  • process.StartInfo.Arguments = "/r C:\setup.exe": C:\setup.exe dosyasını çalıştırır.

Hiç yorum yok:

All Rights Reserved by Csharp Eğitim Dünyası © 2023 - 2024
Powered By Ebubekir Bastama(EBS), Designed by EÇK Yazılım

İletişim Formu

Ad

E-posta *

Mesaj *

Blogger tarafından desteklenmektedir.