Завершение приложения программно с помощью пути к файлу в vb.net

Нет.

разработчик А ответственен за отслеживание информацию о часовом поясе, связанную со значением DateTime с помощью некоторого внешнего механизма.

А заключают в кавычки из превосходной статьи здесь . Необходимость чтение для каждого разработчика .NET.

, Таким образом, мой совет состоит в том, чтобы записать немного класса обертки, который удовлетворяет Вашим потребностям.

6
задан Cyclone 9 September 2009 в 21:10
поделиться

2 ответа

Вам нужно будет изучить свойство Modules каждого процесса и, в свою очередь, проверить имена файлов по желаемому пути.

Вот пример:

VB.NET

    Dim path As String = "C:\Program Files\Ultrapico\Expresso\Expresso.exe"
    Dim matchingProcesses = New List(Of Process)

    For Each process As Process In process.GetProcesses()
        For Each m As ProcessModule In process.Modules
            If String.Compare(m.FileName, path, StringComparison.InvariantCultureIgnoreCase) = 0 Then
                matchingProcesses.Add(process)
                Exit For
            End If
        Next
    Next

    For Each p As Process In matchingProcesses
        p.Kill()
    Next

C #

string path = @"C:\Program Files\Ultrapico\Expresso\Expresso.exe";
var matchingProcesses = new List<Process>();
foreach (Process process in Process.GetProcesses())
{
    foreach (ProcessModule m in process.Modules)
    {
        if (String.Compare(m.FileName, path, StringComparison.InvariantCultureIgnoreCase) == 0)
        {
            matchingProcesses.Add(process);
            break;
        }
    }
}

matchingProcesses.ForEach(p => p.Kill());

РЕДАКТИРОВАТЬ: обновил код, чтобы учесть регистр символов при сравнении строк.

2
ответ дан 17 December 2019 в 07:07
поделиться

попробуйте

System.Diagnostics.Process.GetProcessesByName (nameOfExeFile) .First (). Kill ()

Это игнорирует путь к файлу.

2
ответ дан 17 December 2019 в 07:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: