指定フォルダに新しく追加されたファイルを自動的に送信するプログラム(Windows)

金曜日 , 23, 9月 2016 Leave a comment

「作業指示や設計書のファイルを決まった人に送信をする」というようなことがあります。
パソコンの操作に慣れた人の場合、「メーラーを立ち上げて、ファイルを添付し、送信ボタンを押す」と一連の操作がすぐに浮かびますが、不慣れな方にとっては、この一連の流れを行うのが難しいことがあるようです。
自分の経験と以前うかがった話を元に、定期的に指定フォルダの状態をチェックし、新しく追加されたファイルを発見した場合、自動的に設定した指定アドレスに送信するプログラムを作りました。

簡単に言うと「送りたいファイルをココに置いてくださいね。自動的にメールで送られます。」を実現するプログラムです。

スクリーンショットを撮影し画像ファイルを指定アドレスへ送信するプログラム」を改造し作成しているので、機能としては最低限のものしか実装していません。

  1. OSの起動時にシステムに常駐し、定期的(30秒ごと)に指定フォルダの状態を確認。新しく追加されたファイルを発見した場合、指定アドレスへ送信します。
  2. タスクトレイのアイコンを右クリックし、コンテキストメニューから「新しいファイルのチェック」を選択すると、その時点でファイルのチェック処理を行います。

上記の機能以外の機能は、アプリケーションの終了だけです。

指定フォルダに設置したファイルは自動的に送信対象のファイルとなります。
送信前に確認ダイアログの表示は行われますが、使い方によっては情報漏洩に繋がる可能性もあります。導入環境と使用方法にはご注意ください。

必要なもの:

Visual Studio 2015

ダウンロード:

SendFile.zip

ライセンス:

NYSL

使い方:
  1. ダウンロードしたZIPファイルを展開し、Visual Studio 2015でビルドを行う。
    (ビルド方法については、マイクロソフトのサイト「Visual Studio でのプロジェクトとソリューションのビルドおよびクリーン」などを参照してください。)
  2. SENDFILE.INIに監視対象のフォルダ、メールサーバなど必要な情報を設定する。
  3. Main.exeを起動する。
  4. タスクトレイに「SendFile」というアイコンが表示されていることを確認する。

タスクトレイに表示されている「SendFile」のアイコンを右クリックし、「終了」を左クリックするとアプリケーションが終了します。

プログラム的には、タイマーコントロールで指定フォルダの状態をチェック、新しいファイルを発見したら、System.Net.Mail.SmtpClientクラスの機能を使って送信を行います。
使っているAPIが少ないので古いバージョンの.NET Framework(.NET Framework 2くらいから?)でも動くのではないかと思います。