|
分類:[C#]
ファイルの存在を確認して、存在する場合に処理をしたいと思います。
ファイルが存在したらすぐに処理をしたいので、監視時間を短くしたいのですが、
短くすると、処理には時間がかかるため、くり返し処理してしまいます。
処理の終了を待ちたいのですが、どのようにしたらよいでしょう?
using System;
using System.Windows.Forms;
using System.IO;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
bool there = false;
public Form1()
{
InitializeComponent();
timer1.Interval = 200;
timer1.Enabled = true;
}
private void timer1_Tick(object sender, EventArgs e)
{
if (File.Exists(@"C:\tmp.txt"))
{
there = true;
if (there == true)
{
MessageBox.Show("there");
System.Threading.Thread.Sleep(10000);
there = false;
}
}
}
}
}
boolで処理するかどうかを判定し、処理終了後にfalseにしているつもりなのですが、
これだと、つぎつぎとメッセージボックスが開いてしまいます。
アドバイス乞う。
|