Определить путь запущенной программы - C#

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

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

Добрый вечер. Подскажите пожалуйста, как определить откуда были запущены программы. Раньше данный код работал
            foreach (var item in Process.GetProcesses())
            {
              if (item.ProcessName == "info")
                {
                    if (pach_info == item.MainModule.FileName)
                    { 
                        return IS_QUIK = 1;
                    }
                }
            }
Сейчас программа выдает ошибку в item.MainModule - в отладчике нет данных Может есть другой способ?

Решение задачи: «Определить путь запущенной программы»

textual
Листинг программы
using System.Diagnostics;
using System.Linq;
using System.Management;
 
namespace Process02
{
    class Program
    {
        public static void Main()
        {
            string Programm = "info";
 
            foreach (var item in Process.GetProcesses().Where(n => n.ProcessName == Programm))
            {
                int Id = item.Id;
                string s = GetProcessPath(Id);
            }
        }
 
 
        public static string GetProcessPath(int processId)
        {
            string MethodResult = "";
            try
            {
                string Query = "SELECT ExecutablePath FROM Win32_Process WHERE ProcessId = " + processId;
 
                using (ManagementObjectSearcher mos = new ManagementObjectSearcher(Query))
                {
                    using (ManagementObjectCollection moc = mos.Get())
                    {
                        string ExecutablePath = (from mo in moc.Cast<ManagementObject>() select mo["ExecutablePath"]).First().ToString();
 
                        MethodResult = ExecutablePath;
                    }
                }
            }
            catch //(Exception ex)
            {
                //ex.HandleException();
            }
            return MethodResult;
        }
    }
}

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


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

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

8   голосов , оценка 3.875 из 5
Похожие ответы