Visual Basic'ten Bir Program Nasıl Kapatılır

İçindekiler:

Visual Basic'ten Bir Program Nasıl Kapatılır
Visual Basic'ten Bir Program Nasıl Kapatılır

Video: Visual Basic'ten Bir Program Nasıl Kapatılır

Video: Visual Basic'ten Bir Program Nasıl Kapatılır
Video: Vb.net Pc Kapatma Programı Yapma [Tutorial] 2024, Mayıs
Anonim

Microsoft. NET platformu için uygulama geliştirmek için özel olarak oluşturulmuş araçlardan biri olan esnek ve güçlü programlama dili Visual Basic. NET, tüm yeteneklerini tam olarak kullanmanıza olanak tanır. Özellikle, System. Diagnostics ad alanının bileşenleri, işlemler, olay günlükleri ve performans sayaçlarıyla etkileşim kurmanıza olanak tanır. Örneğin, Process sınıfını kullanarak Visual Basic'ten bir programı kapatabilirsiniz.

Visual basic'ten bir program nasıl kapatılır
Visual basic'ten bir program nasıl kapatılır

Gerekli

Microsoft Visual Studio

Talimatlar

Aşama 1

System, System. Diagnostics ve System. Threading ad alanlarını içe aktarın. Modülün başına aşağıdaki kod satırlarını ekleyin:

İthalat Sistemi

System. Diagnostics'i içe aktarır

System. Threading'i içe aktarır

Bu, yalnızca bu ad alanlarıyla ilişkili bileşenleri kullanmanın rahatlığı içindir.

Adım 2

Kapatılacak işlemin verilerini alın. System. Diagnostics. Process sınıf nesnesini kullanın. Bu sınıfın bir değişkenini bildirin:

Dim oProc As Process

Ardından gerekli işlemi bulmak için bir yöntem kullanın.

Aşama 3

Gelecekte kapatılması gerekecek olan program, geliştirilmekte olan uygulama tarafından başlatılırsa, başlangıçta Başlat yöntemi tarafından döndürülen nesneyi kaydetmeniz yeterlidir:

oProc = Process. Start ("app.exe")

4. Adım

Bilinen bir tanımlayıcıya sahip bir işlemi kapatmanız gerekiyorsa, karşılık gelen nesneyi almak için Process sınıfının statik GetProcessById yöntemini kullanın:

oProc = Process. GetProcessById (nID)

nID, sürecin sayısal tanımlayıcısıdır.

Adım 5

Hedef sürecin yalnızca bazı özellikleri biliniyorsa, onu arayın. Yerel makinede çalışan işlemlerin listesini Process sınıfının bir nesne dizisi olarak alın. GetProcesses (tüm işlemleri döndürür) veya GetProcessesByName (yalnızca belirtilen ada sahip işlemler) yöntemlerini kullanın:

Dim aoAllProcesses As Process () = Process. GetProcesses ()

Dim aoProcsByName As Process () = Process. GetProcessesByName ("app.exe")

Bir döngü kullanarak dizi nesnelerini listeleyin:

Dim oProc As Process

aoAllProcesses'deki Her oProc için

'oProc üzerindeki işlemler

Sonraki

MainModule, MainWindowTitle, ProcessName vb. özellikler arasında dolaşın. İstenen nesneyi bulmak için

6. Adım

Ana penceresine kapat mesajı göndererek programı sonlandırmayı deneyin. Hedef işleme karşılık gelen nesnenin CloseMainWindow yöntemini çağırın. Gerekirse, WaitForExit'i arayarak uygulamanın tamamlanmasını bekleyin, örneğin:

oProc. CloseMainPencere ()

oProc. WaitForExit ()

Pencere kapatma mesajı sıklıkla işlendiğinden ve yok sayılabileceğinden, bu yöntem programın sonlandırılmasını garanti etmez.

7. Adım

Programın sonlandırıldığından emin olmak için CloseMainWindow'u çağırdıktan sonra kısa bir süre bekleyin. Thread sınıfının Sleep yöntemini kullanın. Ardından HasExited özelliğini inceleyerek işlemin durumunu kontrol edin ve bitmediyse Kill yöntemini çağırın:

Thread. Sleep (6000)

oProc. Yenile ()

oProc. HasExited değilse

oProc. Kill ()

Bitir

İstenirse, işlemin durumunu bir döngüde sorgulayabilir ve kullanıcıya verileri kaydetmeden uygulamayı sonlandırması için periyodik istemler gönderebilirsiniz. Ve sadece Kill'i aramayı kabul edersen.

8. Adım

Kapat yöntemini kullanarak program tamamlandıktan sonra sistem kaynaklarını boşaltın:

oProc. Kapat ()

9. Adım

Uygulama yürütme sırasında beklenmeyen hatalardan kaçınmak için tüm program kapatma algoritmasını bir Try-Catch-End Try bloğuna yerleştirin. Gerekirse tanılama mesajlarıyla tam teşekküllü istisna işlemeyi uygulayın.

Önerilen: