- PR -

ファイルの監視について

1
投稿者投稿内容
yamayama
ベテラン
会議室デビュー日: 2006/02/10
投稿数: 68
投稿日時: 2006-05-10 09:31
いつもお世話になります。
.NET2003についてお聞きしたいのですが、
ファイルの受信を常時監視し、ファイルが受信されたらイベントが発生するようなプログラムを考えているのですが、方法がわかりません。実現可能なのでしょうか?どなたかアドバイスをお願いします。
甕星
ぬし
会議室デビュー日: 2003/03/07
投稿数: 1185
お住まい・勤務地: 湖の見える丘の上
投稿日時: 2006-05-10 09:35
引用:

yamayamaさんの書き込み (2006-05-10 09:31) より:
ファイルの受信を常時監視し、ファイルが受信されたらイベントが発生するようなプログラムを考えているのですが、方法がわかりません。実現可能なのでしょうか?どなたかアドバイスをお願いします。


まず、ファイルの受信って何?
監視するにはいろいろな方法が用意されていますし、たぶん何らかの方法があるでしょうけど、「ファイルの受信」ってのが何を指しているのか判らない事にはなんとも(^^;
yamayama
ベテラン
会議室デビュー日: 2006/02/10
投稿数: 68
投稿日時: 2006-05-10 09:43
抽象的な表現で申し訳ありませんでした。

ファイルの受信とは、
ある指定したフォルダーもしくは、ドライブにファイルが移動されてきた場合のことを想定しております。
例えば、指定フォルダーに他の端末よりファイルが転送された場合、または、同端末よりファイルが転送された場合、双方想定しております。

よろしくお願いします。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-05-10 09:47
引用:

yamayamaさんの書き込み (2006-05-10 09:43) より:

ファイルの受信とは、ある指定したフォルダーもしくは、ドライブにファイルが移動されてきた場合のことを想定しております。
例えば、指定フォルダーに他の端末よりファイルが転送された場合、または、同端末よりファイルが転送された場合、双方想定しております。


System.IO.FileSystemWatcher クラスはいかがでしょうか?
NT/2000 系の Windows でしか使用できませんが。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
yamayama
ベテラン
会議室デビュー日: 2006/02/10
投稿数: 68
投稿日時: 2006-05-10 10:02
System.IO.FileSystemWatcherクラスの使用で
実現可能のように思われますので
早速試してみたいと思います。
ありがとうございました。

BackDoor
ぬし
会議室デビュー日: 2006/02/20
投稿数: 831
投稿日時: 2006-05-10 10:16
直接回答ではありません。

こうしたケースはアプリケーションを組んで対応するのでなく、運用管理ツール
を使用する方法も選択肢の1つだと思われます。
→ ツール側で「特定ファイルが更新されたらイベントを発生させる」よう定義
  し、イベント部分のアプリケーションを開発するイメージで設計します。

参考までにウチでは過去にCA、現在ではNRIの製品を使用しております。
ハニワ祭り
大ベテラン
会議室デビュー日: 2005/11/15
投稿数: 115
投稿日時: 2006-05-10 23:56
引用:

じゃんぬねっとさんの書き込み (2006-05-10 09:47) より:
引用:

yamayamaさんの書き込み (2006-05-10 09:43) より:

ファイルの受信とは、ある指定したフォルダーもしくは、ドライブにファイルが移動されてきた場合のことを想定しております。
例えば、指定フォルダーに他の端末よりファイルが転送された場合、または、同端末よりファイルが転送された場合、双方想定しております。


System.IO.FileSystemWatcher クラスはいかがでしょうか?
NT/2000 系の Windows でしか使用できませんが。





以前受信ファイル監視のアプリを作成したとき
FileSystemWatcherを試してみたことがあるのですが、
複数ファイルを同時に受信したりすると
稀に発生すべきイベントが発生しなかったり、
また、複数の受信ファイルを同時に処理する必要もないため、
結局Whileループ内で、
「ファイル監視(最初の一件のみ処理してバックアップフォルダに移動)+ Sleep(1秒)」 とした記憶があります。

1

スキルアップ/キャリアアップ(JOB@IT)