誰かが特定の.exeファイルを開こうとするたびに「prog.exe」と呼ぶプログラムをc#で書いています.プログラムはそれをシャットダウンし、他の3つのプログラムのうちの1つをランダムに開きます.「a. exe」、「b.exe」、「c.exe」。私の問題は、ファイルの名前や場所を変更するだけでユーザーに中断させたくないということです。ファイルの名前または場所が変更されたかどうかを知る方法はありますか?
私は、プログラムを見つけて殺すことから、それを使用して強制終了.Kill()
し、必要な.exeファイルを使用してランダムに開くことまで、すべてを行うことができました
Random rand = new Random(DateTime.Now.Millisecond);
int progNum = rand.Next(1, 3);
string progName = "a.exe";
switch (progNum)
{
case 2:
progName = "b.exe";
break;
case 3:
progName = "c.exe";
break;
}
Process.Start(@"c:\" + progName);
しかし、それらのファイルへの変更を追跡する方法がよくわかりませんでした。とりあえず、毎分、ドライブを調べて、必要なディレクトリに見つからない場合はexeファイルを検索しますが、それだけでは十分ではなく、単純な名前の変更は気付かれません.
- それを行う他の方法はありますか?
- またはファイルの変更後に追跡するより良い方法はありますか?
- または、必要な場所に見つからない場合は、メモリにコピーを保存してハードドライブに保存するだけですか?