Winbiff → Outlook移行計画
(最終更新:2009年4月27日)



メールデータの変換
私は1994年のバージョン0.91の頃から会社内でWinbiffを使っているの ですが(たぶん、私の勤務する会社に最初に持ち込んだ?)この度めでたく 会社のメールシステムが憎きMSのOutlookへ移行せざるをえない状況になり、なんとかデータの 移行ができないか、いろいろ調べてきました。
最初は自分で変換プログラムを作るつもりだったのですが、Outlookの メールフォルダのファイルフォーマット仕様がどうにも見つからなく て、仕方なく既存のツールに頼ることにしました。

いろいろ試してみました。ちょっと面倒くさいのですがこの方法がよ さそうです。(他に何かいい方法があったら教えてください)


アドレス帳の変換
いろいろ試してみたんですけど、どうにもOutlookのアドレス帳にあたる 「連絡先」というやつがどうにもよくありませぬ。
配布リストというのを作ればアドレスをグループ化できて、一応配布リス ト自体も階層化できるようなんだけど、データ形式とかの仕様が見つから ないため、どう変換していいかわかりません。
フリーソフトとかでも見つけられませんでした。

そこでちょっと考えまして、アプローチを変えることにしました。
「Winbiffのアドレス帳をそのまま使う」方法です。
Outlookの「連絡先」に変換せずに、Winbiffのアドレス帳のまま使おうと いう発想です。これならOutlookの連絡先に勝手にメールを送りつけるウ ィルスの類が出てきても被害は少なそうな感じもするし。
というわけで、自作してしまいました。最初はPython言語だけを使って Winbiffのアドレス帳データを読みとり、COMでOutlookに語りかけるもの を作りました。GUIにはTcl/Tkを使いました。
これはこれで充分使い物になるのですが、仮に人に使っていただくことを 考えると、Pythonのセットアップが必要になって、ちょっと面倒です。
一度はPython + Delphiを使う方法で作り始めて、かなりできたのですが、これ にしてもPythonのライブラリなどでファイルがたくさん必要です。
できればバイナリ1個ですませられた方がよろしい。
ここで一念奮起して、Delphi1本で作ることに方針変更。
Outlookとの接続はわりと簡単にできたのですが、テキスト処理はPython の方が全然楽なので、Delphi(Pascal言語)に直すのに苦労しましたが、 なんとかできました。
というわけで公開します。
現時点でバージョン0.9とします。(基準不明)

(2003年1月9日追記)
ちょっとだけ変わって0.91とします。 READMEファイルも付けてzip圧縮しました。

(2003年1月20日追記)
ちょっと見栄えがよくなって0.92とします。

(2003年1月22日追記)
0.93で、またちょっと見栄えがよくなって、さらに右側のリストでのグループのダブルクリックに対応しました。

(2003年2月7日追記)
0.94を作りました。「引用付き貼り付け」ボタンを追加しました。 クリップボードにテキストをコピーして置いた状態で、このボタンを押すとクリップボード内のテキストを各行頭に引用符 '> ' を付けたものに置き換えます。 その状態で目的のウィンドウでペーストすれば Winbiff のメール作成の「引用付き貼り付け」と同じようなことができます。

(2003年2月24日追記)
引用付き貼り付けサポート機能に「クリップボード上のテキストの最終行が改行で終わっていない場合に、最後の行が消えてしまう」というバグを見つけたので、これを修正するついでに引用マークを自分で設定できるように変更しました。 また数ヶ所にヒント情報を出すようにしたり、若干の画面デザイン変更を行いました。 これをバージョン0.95とします。

(2003年7月23日追記)
Winbiffのアドレス帳でひとつのニックネームに複数アドレスを設定していた場合にひとつだけしか読めていなかった点を修正しました。 右側のリスト上で右クリックすると該当するニックネームのプロパティを表示する要変更しました。 バージョン0.96とします。

(2005年3月24日追記)
とある方からのご要望により、1年8ヶ月ぶりに新バージョンを作りました。
グループ内のリスト表示の2番目の項目をメールアドレスとメモのどちらかを選択できるようにしました。 この機能は ol_wb2adrs.ini ファイルの List2ndItem フィールドに ADDRESS または MEMO と書き込むことにより利用できます。
またメールアドレスの貼付時にメールアドレスだけか表示されている名前も入れるかを選択できるようにしました。 この機能は ol_wb2adrs.ini ファイルの MailAddressOnly フィールドに YES または NO と書き込むことにより利用できます。
どちらの設定値も現在GUIによる設定はできません。 バージョン0.97とします。

(2005年3月31日追記)
ウィンドウの大きさが変更されたときにツリービューとリストビューの大きさをあわせて変更するようにしました。 バージョン0.98とします。

(2009年4月15日追記)
またまたとある方からのご要望により、なんと4年ぶり!に新しい版を作りました。 残念ながらいただいたご要望の1/3しか達成できませんでしたが、これまでのTOとCCに加えてBCCにも対応しました。 またウィンドウの出現位置を ol_wb2adrs.ini ファイルに記憶するようにしました。 たいした機能アップでもないので、バージョン0.98aとします。

(2009年4月27日追記)
先の方よりいただいていたご要望のもう一点、アドレスの追加機能を使うことができるようにしました。
これまではメールアドレスの貼り付け時に上書きしかできませんでしたが、今バージョンでは既に記入されているアドレスに対して選択したアドレスを追加することができるようになります。 ただしこの機能は設定を行わないと使えないようにしてあります。
その理由は、これを設定するとアドレス貼り付け時にOutlookがいちいち警告してくるようになってしまうためです。
現在のアドレスに対してアドレスを追加するためには現在設定されているアドレスをOutlookより取得する必要があります。これを行うとOutlookが警告ダイアログを出し、ユーザに許可か拒否かを聞いてきます。 許可する場合には、その後最大10分間は再び警告を出すことなしなくなりますが、その時間が過ぎればまた警告を出します。
これはたしかOffice 2000 XP3あたりから実装されたOfficeのセキュリティ機能なのですが、この警告ダイアログを出さなくする方法はありません。 私はこの警告ダイアログが鬱陶しくてとても嫌いなため、これまで拙作にアドレスに追加機能を実装していませんでしたが、今バージョンでは、この機能を使う/使わないをユーザが選択できるようにしました。 ol_wb2adrs.ini ファイル内に UseAppendMode というキーワードがあり、この行を YES とすることによってアドレス追加機能が使えるようになります。 下記.zipファイルに同梱の同ファイルでは NO としておりますので、アドレス追加機能が使いたい方は YES と書き直してください。
また公開はしませんでしたが、0.98b版にて実装したウィンドウサイズの記憶機能も本版に含まれております。ウィンドウの大きさを変更していると終了時に ol_wb2adrs.ini ファイルに大きさを記録しますので次回起動時には前回終了時のサイズで立ち上がります。 もしもサイズ設定をリセットしたい場合には ol_wb2adrs.ini ファイル内の WindowSize というキーワードの行自体を削除してください。次回起動時にデフォルトのサイズで立ち上がります。 なお ol_wb2adrs.ini ファイルの修正は、本ソフトを終了しているときに行ってください。
本版をバージョン0.99とします。

ol_wb2adrs_099.zip (238,461 バイト)のダウンロード
(McAfee定義ファイル 5597でウイルススキャン済み)


実行したら、こんなウインドウが出てきます。
画面はバージョン0.96のものです。 バージョンによって若干の画面デザインの違いがあります。
「メールフォルダ」の部分にWinbiffで使っていたメールフォルダを指定 してください。(card.datとgroup.datのあるフォルダです) フォルダを指定したら「アドレス帳読み込み」を実行します。
左側のリストで表示するグループを選びますと右側のリストにそのグルー プ内のリストが表示されます。
必ず右側のリストで送りたい人(あるいはグループ)を選択して「宛先」へ または「CC」へボタンを押してください。
複数選択を行うにはCtrlキーを押しながらクリックします。
(現時点で、ダブルクリックには何の応答もしません。)
(2003年1月22日追記)
0.93でダブルクリックに一部対応しました。

Outlookが起動している状態でないと何が起こるか不明です。

ちなみに ol_wb2adrs.exeと同じディレクトリに ol_wb2adrs.ini というファイルを 作り、以下のような1行を書いておくと起動時にメールフォルダが設定されます。
MailFolder: c:\Mail\futot