Закрытие сторонней программы через определенное время - C#

Узнай цену своей работы

Формулировка задачи:

Может кто нибудь скинуть рабочий пример таймера, который закрывает стороннее приложение?

Решение задачи: «Закрытие сторонней программы через определенное время»

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10. using System.Diagnostics;
  11. using System.Drawing.Printing;
  12. using System.Printing;
  13. using PdfSharp.Pdf.Printing;
  14. using System.Threading;
  15.  
  16.  
  17. namespace WindowsFormsApplication4
  18. {
  19.     public partial class Form1 : Form
  20.     {
  21.         public Form1()
  22.         {
  23.             InitializeComponent();
  24.         }
  25.  
  26.         private void Form1_Load(object sender, EventArgs e)
  27.         {
  28.  
  29.         }
  30.  
  31.         private static string GetDefaultPrinterName()
  32.         {
  33.             String[] printers = PrinterSettings.InstalledPrinters.Cast<string>().ToArray();
  34.             for (int i = 0; i < printers.Length; i++)
  35.                 if (new PrinterSettings() { PrinterName = printers[i] }.IsDefaultPrinter)
  36.                     return printers[i];
  37.             return null;
  38.         }
  39.  
  40.         public void kill()
  41.         {
  42.             foreach (Process proc in Process.GetProcesses())
  43.             {
  44.                 if (proc.ProcessName.StartsWith("Acro"))
  45.                 {
  46.                     string proname = proc.ProcessName.ToString();
  47.                     if (proc.HasExited == false)
  48.                     {
  49.                         proc.WaitForExit(6000);
  50.                         string title = proc.MainWindowTitle.ToString();
  51.                         if (title == "Adobe Acrobat Pro" && proname == "Acrobat")
  52.                         {
  53.                             proc.Kill();
  54.                             break;
  55.                         }
  56.                         else
  57.                         {
  58.                             string title2 = proc.MainWindowTitle.ToString();
  59.                             if (title2 == "Adobe Reader" && proname == "AcroRd32")
  60.                             {
  61.                                 proc.Kill();
  62.                                 break;
  63.                             }
  64.                         }
  65.                     }
  66.                     else
  67.                     {
  68.                         try
  69.                         {
  70.                             proc.Kill();
  71.                             break;
  72.                         }
  73.                         catch
  74.                         {
  75.                             break;
  76.                         }
  77.                     }
  78.                 }
  79.             }
  80.         }
  81.  
  82.         public void print()
  83.         {
  84.             PdfFilePrinter.AdobeReaderPath = @"Reader 10.0\Reader\AcroRd32.exe";
  85.             PdfFilePrinter printer = new PdfFilePrinter(@"C:\Users\Slonik\Desktop\Binder2.pdf", @"" + GetDefaultPrinterName());
  86.             printer.Print(5000);
  87.         }
  88.  
  89.         private void button1_Click(object sender, EventArgs e)
  90.         {
  91.             print();
  92.             kill();
  93.         }
  94.     }
  95. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.833 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы