Закрытие сторонней программы через определенное время - C#
Формулировка задачи:
Может кто нибудь скинуть рабочий пример таймера, который закрывает стороннее приложение?
Решение задачи: «Закрытие сторонней программы через определенное время»
textual
Листинг программы
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.Diagnostics; using System.Drawing.Printing; using System.Printing; using PdfSharp.Pdf.Printing; using System.Threading; namespace WindowsFormsApplication4 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { } private static string GetDefaultPrinterName() { String[] printers = PrinterSettings.InstalledPrinters.Cast<string>().ToArray(); for (int i = 0; i < printers.Length; i++) if (new PrinterSettings() { PrinterName = printers[i] }.IsDefaultPrinter) return printers[i]; return null; } public void kill() { foreach (Process proc in Process.GetProcesses()) { if (proc.ProcessName.StartsWith("Acro")) { string proname = proc.ProcessName.ToString(); if (proc.HasExited == false) { proc.WaitForExit(6000); string title = proc.MainWindowTitle.ToString(); if (title == "Adobe Acrobat Pro" && proname == "Acrobat") { proc.Kill(); break; } else { string title2 = proc.MainWindowTitle.ToString(); if (title2 == "Adobe Reader" && proname == "AcroRd32") { proc.Kill(); break; } } } else { try { proc.Kill(); break; } catch { break; } } } } } public void print() { PdfFilePrinter.AdobeReaderPath = @"Reader 10.0\Reader\AcroRd32.exe"; PdfFilePrinter printer = new PdfFilePrinter(@"C:\Users\Slonik\Desktop\Binder2.pdf", @"" + GetDefaultPrinterName()); printer.Print(5000); } private void button1_Click(object sender, EventArgs e) { print(); kill(); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д