4

小さな「問題」ウィンドウがあり、csrss.exeを強制終了できないシステムファイルがありますが、別のフォルダーにcsrss.exeという名前の別のファイルがあり、それが実行されている場合、そのプロセスを終了するにはどうすればよいですか?私がファイルについて知っているのは、その場所と名前/サイズだけです。基本的なファイル情報です。

笑私は質問で私の質問に答えました..とにかく私はシステムファイルcsrssのプロセスを殺したくないと言いたかっただけです、私は同じファイル名とプロセス名を持っているファイルのプロセスを殺したいです。それも可能ですか?

4

2 に答える 2

0

csrss.exeプロセスを強制終了する必要があると言っているわけではありませんProcessModule.FileNameが、同じ名前の特定のプロセスを見つけたい場合は、実行可能ファイルへのフル パスを含むメイン プロパティを確認できます。

Process process = // Get your process here
process.Modules[0].FileName == "C:\\MyPath\csrss.exe";
于 2012-10-27T13:07:58.027 に答える
0

FileInfoサイズ/属性/などに基づいてプロセスを終了したい場合..それなら、これは可能です! ここに簡単な例があります

int FileSize = 0; //This belongs to the process you would like to terminate
//Create the process csrss for every process with the name csrss
foreach (Process csrss in Process.GetProcessesByName("csrss"))
{ 
     FileInfo csrssFile = new FileInfo(csrss.StartInfo.FileName); //Get the properties of its file name
     if (csrssFile.Length == FileSize)
     {
         csrss.Kill(); //Terminate the process based on its file length (size)
     }

}

もう一つの例

int FileSize = 0;
Process[] RunningProcesses = Process.GetProcesses();
foreach (Process csrss in RunningProcesses)
{
     if (csrss.ProcessName == "csrss")
     {
          FileInfo csrssFile = new FileInfo(csrss.StartInfo.FileName);
          if (csrssFile.Length == FileSize)
          {
               csrss.Kill();
          }
     }
}

ありがとう、
これがお役に立てば幸いです:)

于 2012-10-27T14:37:30.017 に答える