Проблема в том, что иногда этот код падает с NullReferenceException. Почему? Естественно, запущена только одна копия программы, т. е. о прибивании из другой копии речь не идёт.
- Код: Выделить всё
Imports System.Management
Module All
Sub Main()
For Each Prc As ManagementObject In (New ManagementObjectSearcher("SELECT * FROM Win32_Process WHERE Name='Spark.exe'")).Get()
Dim Cmd As String = Prc("CommandLine").ToString()
If Cmd.Contains("--type=render") AndAlso Cmd.Contains("--renderer-print-preview") AndAlso Not Cmd.Contains("--extension-process") Then Process.GetProcessById(Prc("ProcessID")).Kill()
Next Prc
End Sub
End Module