2015-03-25 1 views
0

Как убить процесс в visual studio 2008 C#? Я попытался код нижеОшибка 'System.Diagnostics.Process' не содержит определения для 'GetProcesses' в visual studio 2008 C#

using System; 
using System.Windows.Forms; 
using System.Diagnostics; 
namespace GR 
{ 
public partial class Form1 : Form 
{ 
    public Login loginform; 
    public EntryForm entryform; 

    public Form1() 
    { 
     //userName = ""; 
     InitializeComponent(); 
     //CheckForInternetConnection(); 

     foreach (Process clsProcess in Process.GetProcesses()) 
     { 

      if (clsProcess.ProcessName.StartsWith("Bin_")) 
      { 
       clsProcess.Kill(); 
      } 
     } 
     loginform=new Login(); 

     entryform = new EntryForm(); 
     Controls.Add(loginform); 
     Controls.Add(entryform); 

     loginform.Show(); 
     entryform.Hide(); 

     loginform.entryForm = entryform; 
     entryform.loginForm = loginform; 

    } 
    } 
} 

Я получаю эту ошибку

'System.Diagnostics.Process' не содержит определения для 'GetProcesses.

Любое предложение?

+2

Уверены ли вы? Что такое ваша версия .NET? –

+0

С информацией, представленной здесь, это невоспроизводимо, поскольку GetProcesses очень присутствует в Process. Можете ли вы убедиться, что у вас нет фанковых символов юникода, присутствующих в названии или что-то в этом роде? Можете ли вы поместить курсор внутрь процесса и нажать F12 и сообщить нам, где он вас принимает? –

+0

Можете ли вы добавить свой полный код. Проблема может быть в другом месте. Кроме того, убедитесь, что вы ссылаетесь на правильную библиотеку DLL. – Kami

ответ

0

Ompact Framework не поддерживает его, поэтому вы получаете сообщение об ошибке. Резерв должен использовать API-интерфейсы Toolhelp, как это делает SDF. Взгляните на ProcessEntryclass in the SDF. В частности, метод GetProcesses() и последующий метод Kill().

Смежные вопросы