RDSync その3(最終回) -Windows Form-


コンソールアプリの検証でほぼほぼどんな感じになるかつかめたので、WindowsFormにいざ取り掛かる。しかしながら、UIはやっぱりワナが多い。まず単純にコピーすればいいなぁと思っていたんですが、やっぱり進捗率とかあった方がいいなぁとか、設定画面があった方がいいとか。設定されていないときは処理させないとか、キリないです。と言うことで設定が完了していない場合は処理しない、コピー処理する前に対象となるファイルを全部取得して画面上に進捗状況を表示するようにしました。あとは簡易的ですがインストーラも作ってそれなりアプリっぽくしてましたよ。

  • インストール

    インストーラを実行してください。ここからダウンロードできますよ。

    インストーラは特に選択肢もないのでツラツラ進んで完了してください。

  • 設定

    初回起動時にはまず初めに設定画面が表示されます。

    一旦設定が完了したらファイルメニューから起動できます。

    各メディアファイルフォルダ設定用参照ボタンをクリックして対象となるフォルダを選択してください。(直接入力でもOK。存在しないフォルダを選択するとエラーなります。悪しからず)
    こんな感じでフォルダパスを設定してください。

    保存ボタンをクリックして設定内容を保存してください。

  • 処理操作

    設定が保存されると処理開始ボタン(メモリーカードからメディアファイルをコピーする)が有効になります。

    ボタンをクリックして処理を開始します。

    キャンセルもできます。(処理を停止するボタンをクリックする。)

    完了すると、コピーしたファイル数と所要時間が表示されます。メモリーカード内に同じファイルがあるなどした場合はコピーされない場合があります。コピーできなったファイルがある場合はそのリストを表示できます。

    終了はファイルメニューからでも閉じるボタンでもCtrl+Qでも可能です。

  • コピーできなかったファイル一覧

    コピーできなかったファイルがある場合は、元ファイルのパスの一覧を表示できます。
    ※メモリーカードに同じファイルが存在した場合など

処理が完了するとちゃんと日付毎にフォルダが作成されて保存されています。

と言う感じでマニュアルっぽくなっちゃいましたが、こんな感じの動きをします。
転送スピードはエクスプローラとそんな変わらないです。とりあえずエクスプローラでフォルダ開いて日付フォルダ作ってって手間を考えたらそれより早いかもくらいですかね。
そんなのもあるので欲を言えば常駐アプリにしてメモリカードが挿入されたらコピー処理を起動するとかにしたいですね。
※Eye-Fiの転送スピードはかなり遅かってですが、手を煩わさないということで良しとしましょう。
いろいろ制約つけないと問題が出てきそうですが、そんな感じでこれはこれにしておきます。

ソースはこちらから取得できます。

次回は何やるかまだ未定。いっつもこんな感じですみません。。。