Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Узнать запущено ли приложение.


Автор: nikakoi 15.2.2008, 14:48
Добрый день, 
Подскажите плз, как узнать запущено ли приложение?
Можно ли как нить определить полный путь запущенного приложения?

Автор: nikakoi 15.2.2008, 16:38
 public bool IsProcessExist(String procName, int procId, String filePath)
{
      Process[] processes = Process.GetProcessesByName(procName);

      foreach (Process process in processes)
      {
        if (process.Id != id)
        {
          String str = Assembly.GetExecutingAssembly().Location;
          if (process.MainModule.FileName == filePath)
            return true;
         }
      }
   return false;
}

Автор: FractalizeR 16.2.2008, 23:23
Для определения, запущена ли уже копия этого же приложения, можно пользоваться именованными объектами. Такими, как мьютексы:
Код

bool firstCopy = false;
System.Threading.Mutex testMutex = new System.Threading.Mutex(true, "TestMutex1", out firstCopy);
MessageBox.Show(firstCopy.ToString());

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)