2
我需要監視何時執行文件(* .wav)。
我知道filesystemwatcher類。然而,這個類是否在文件被使用時通知?我也遇到了Monitor when an exe is launched。雖然我意識到這與一個EXE有關,有沒有辦法通知一個WAV文件已被執行?監視文件正在使用中
我需要監視何時執行文件(* .wav)。
我知道filesystemwatcher類。然而,這個類是否在文件被使用時通知?我也遇到了Monitor when an exe is launched。雖然我意識到這與一個EXE有關,有沒有辦法通知一個WAV文件已被執行?監視文件正在使用中
不,您不能在打開不可執行文件(如mp3,wav,txt等)時收到事件。
但如果文件被打開寫現在居然可以檢查...
static void Main(string[] args)
{
using (BackgroundWorker bw = new BackgroundWorker())
{
bw.DoWork += Bw_DoWork;
bw.RunWorkerAsync();
}
Console.WriteLine("Press Q to exit");
while (Console.ReadKey(true).Key!=ConsoleKey.Q){}
}
private static bool[] opened;
private static void Bw_DoWork(object sender, DoWorkEventArgs e)
{
var files = Directory.GetFiles(AppDomain.CurrentDomain.BaseDirectory, "*.mp3");
opened = new bool[files.Length];
while (true)
for (int i = 0; i < files.Length; i++)
try
{
using (var fs = File.Open(files[i], FileMode.Open, FileAccess.Read, FileShare.None))
opened[i] = false;
}
catch{ opened[i] = true; }
}
附:我知道這很難看:D
嘿它可能很醜,但它可能是解決方案的一部分 – Eminem
無論何時執行媒體播放器,您都可以追蹤。因爲文檔不能寫入.docx文件。媒體播放器將執行'.wav'格式。我認爲這可以滿足您的要求。如果沒有,請在這裏留言並縮小您的問題。 –