<   2006年 01月 ( 5 )   > この月の画像一覧
引越し、インフルエンザ、そしてお泊り
 1月27日、娘夫婦の岐阜への引越し。 ところがその前日にパパがインフルエンザに罹ってしまった。 引越しの準備は既に家内も手伝ったりしてできており、引越しそのものは業者がやってくれるが、前のマンションでは(娘と家内が)荷物を出したり後の掃除をしたり、 新しいマンションでは(パパが、インフルエンザでも止むを得ない)荷物を受け取り、置き場所の指示をしたりが必要。 一方私はこの家で当面使わなくなったベビーベッドや出産用品の詰まった段ボール箱などを受け取る。
 11ヶ月の春音にインフルエンザをうつさないように、春音だけを家で預かる事になる。 と言う訳で、夕方近く家内がうれしそうに春音を抱いて家に帰って来る。

 春音にとっては、初めて母と別れて1人だけで泊ることになる。
 ようやく歩けるようになった春音は、危なっかしい足取りながら歩き回ったり、いつものように床イッパイにCDや洗濯ばさみを散らかしてゴキゲンだった。 お風呂も久しぶりに私が入れたが、その時もニコニコだった。
f0066555_924318.jpg が、夜寝る時になると、母親を恋しがってかぐずつき始める。 眠りが浅く寝付いたかと思うと泣くというのを2、3度繰り返して、それでも2時過ぎには眠った。

 翌朝、娘がお乳が張って痛いからと電車でやってきた。 それは口実で「どうしてるのか」と心配で駆けつけたのではないかと思う。
 2日目は大分慣れ、離乳食、オシメ替え、オヤツ、遊びのお付き合い、etc. 29年前の娘、21年前の息子、2人の子育てのおさらいをしているような気分だった。

 結局、タミフルのおかげでパパのインフルエンザも治まり、2泊3日で春音を引っ越し先の新居に送り返した。 春音が大好きなパパには隔離されてしまい、災難だったが、ジジババにとってはうれしい3日間だった。
[PR]
by t_ichib | 2006-01-29 20:03 | 今日もまたジジ馬鹿・親ばか
メールの内容確認
 1月20日 メール内容表示プログラム

f0066555_15414969.jpg いきなり、テキストファイルを出力する前に、メールファイルの内容を表示させるプログラムを作成。
 入力するファイルの拡張子が、dbxかidxにより、OEかBeckyかを区別し、それぞれのメールを読み込み、表示している。
 =前のメールを表示、=次のメールを表示等の機能の他に、(メールは30行表示するようにしているので)=メールの続きを表示の機能がある。 は(すぐ前の部分でなく)そのメールの先頭まで戻る。

 メールの内容は、Received:とか、Return-Path:とかのキーワード、テキスト形式のメール本文が続き、HTML形式のメールの場合それが続き、添付ファイルがある時は、/9j/4R3JRXhp等の文字列が続きます。

 これで完成!…と思っていたところ、妙な文字列が続くメールがあることに気づく。 色々調べた結果、charset="utf-7"となっていることに気づく。 エンコードがJISでなく、UTF-7だと分かる。 これも、インターネットで調べ、デコードできるようにする。
 比較的最近になって、知り合いになった方からのメールでした。 今後も未だ知らないメールの約束事を発見するたびに、手直しが必要になってくるでしょう。

 1月27日 キーワードとメール本文の区別

 テキストファイルとして保存したいのは、FROM:、TO: 、DATE:、SUBJECT:の各キーワードとテキスト形式のメール本文としました。
 が、これが意外と厄介です。 キーワードをすべてリストアップするとなると、(見当違いかもしれないが)メールソフトやメールサーバごとに、違うものがあるのではないかと思います。
 もっといい方法があるかもしれませんが、手探りで進めていくことになりました。
 また、たまたま使っているOEとBeckyのメールソフトだけに関するプログラムとなりますが、まあ自分用に作るプログラムですから、それでいいでしょう。 これはいいものだと自信が持てるようであれば、将来他の方にもお勧めすることがあるかもしれませんが。
[PR]
by t_ichib | 2006-01-27 20:04 | 今日もまた老年プログラマー
春音が歩いた
f0066555_17581441.jpg
 1月22日、娘から「春が歩いた」とメールが入る。 

 その翌々日、間近に迫った引越しの荷造りの手伝いを兼ねて、娘夫婦のマンションまで出かける。
 メールでは2、3歩と書いてあったが、それから2日で10歩くらい歩けるよう、進歩していた。


 本当は、引越しの荷造りで忙しいのに、家内と娘にそちらを任せて、ジジは春音と遊んでいました。
[PR]
by t_ichib | 2006-01-24 20:55 | 今日もまたジジ馬鹿・親ばか
プログラム作成の準備
 1月11日 OutlookExpressのフォーマットは

 家内が近所の美容院に。 この間にまた、パソコンを…。

 先日作成したファイルダンプで、受信箱.dbxを調べる。(印刷したdbxファイルの説明書と首っ引きで)

 ファイルヘッダとか、ファイル情報だとかは良く理解できないが、相対アドレス:2B24番地に最初のインデックスヘッドがある。 (少なくとも私のパソコンでは)
f0066555_20435416.jpg


 その部分を16進表記で見ると、
 242B 0000 F401 0000 0000 1401 805F 0000 0100 0000 0204 0000 84D4 EA00
①       ②           ③                             ④
① オブジェクトマーカ: アドレスと同じ数値が入ります。(ヘッド部分は12バイト) ≠の時はインデックスの終り
② 使用されているインデックス領域のバイト数(ヘッドを除く)、次のインデックスヘッドは12+500(=1F4)バイト後にあります。
③ インデックス情報(各4バイト)の個数、20個(=14) 0の時は未使用のインデックス
④ メッセージ本体のポインター アドレス:EAD4

 メッセージの情報は
D4EA 0000 0002 0000 0002 0000 E4EC 0000 5265 7475 726E 2D50
①                ②       ③
① オブジェクトマーカ: アドレスと同じ数値が入ります。(ヘッド部分は16バイト)
② メッセージのバイト数
③ 同じメッセージの次のブロックのアドレス 0の時は、そのメッセージの終り
 この後の5265…以下は、メッセージの内容です。 (Return-P)

 1月14日 Beckyのインデックスは

 OutlookExpressの場合は、メール本文へのインデックスがありましたが、Beckyの場合もインデックスがあるのではないかと調べてみました。
f0066555_1512680.jpg すると、ありました。 右の図のFolder.idxというのがインデックスファイルです。
|bb6e6f8|3eb19ca8|(メールのタイトル) という文字列がありました。
3eb19ca8は右の図の3eb19ca8.bmfというファイルを、はそのファイルのなかのアドレスを指していました。
一つ一つのインデックスは、復帰改行コード(16進0D0A)で区切られています。

 これで、OutlookもBeckyもファイルを指定したら、インデックスを読みそのインデックスからメールを取り出すという同じ手順でプログラム化できます。
[PR]
by t_ichib | 2006-01-14 20:25 | 今日もまた老年プログラマー
ファイルダンプのプログラム
 12月30日 =に悩まされたが

 家内が元の職場の人に誘われて、お餅つきに出かけた。 昼少し前に出て、夕食も終わった8時過ぎに帰って来た。 久しぶりにもとの職場のメンバーが顔を揃え、話がはずんだようだ。

 前回までに、少し仕組みが分かってきたので、Beckyのファイルを読み込んで、BASE64のデコード・JIS⇒シフトJIS変換をしながら、テキストボックスに表示するプログラムを作ってみる。
 iso2022-jp、?=などの開始と終りのキーワードを検出するなど、大分プログラムが複雑になる。 …と、実行エラー。

 漢字だから、偶数バイトでないといけないのに、奇数バイトになっている。 文字列が次の行に継続する時、行末にが使われるようだ。

 2行をくっつけて、JIS⇒シフトJIS変換をするようにする。 が、文章の途中から妙な文になる。 妙な表現になる元の文字列を見ると、またもやの位置。

 どうやら、Escコード(16進で1B)、スペース(16進で20)、=(16進で3D)が文字列の中にあると、=1B、=20、=3Dとしている。 (これもインターネットのどこかで説明があったかも)

 それを修正して、再度 xxxx.bmf を見てみると、やったぞ。 後ろの方に写真などの添付ファイルらしき文字列があるが(当面無視)、前の方にはメールヘッド・テキストが正しく表示されている。

 1月7日 プログラム作成

 家内が元の職場の人とお茶をしに行った。 じゃ、パソコンにむかって…

 前回、Beckyのメールファイルの中味が少し分り、気をよくして、OutlookExpressの受信箱.dbx をやはり前回作成したプログラムで見てみた。 が、文字化けがひどく何がなんだか分からない。 
 しかも、数行表示しただけ…。 どうやら、Beckyのようなシーケンシャルファイルではなく、特殊なファイル構造のようだ。

 実は年末年始の2~3日、インターネットでそれを調べていた。

 dbxファイルは、一つのファイルの中が、ファイルヘッド、インデックス情報、メッセージ、その他色々に分かれている。 それを確認するためには…。
f0066555_1457564.jpg
 昔、作った事があるファイルダンプのプログラムを作ってみた。

 テキストボックスを2つ配置して、一方には16進コードの表示、もう一方にはASCコードを表示する。 (判別がつく場合は、BASE64をデコードし、JIS⇒シフトJIS変換した文字列を表示する。)

 現在表示している位置より前の画面・次の画面を表示する機能、指定されたアドレスへジャンプして表示する機能、文字列の検索(ASCコード・JISコード・16進コード)機能等をつけた。

 右のプログラムの画面にたどり着くまでに、数回作り変えた。 まあ、今回の目的にあったファイルダンププログラムができた。
[PR]
by t_ichib | 2006-01-07 20:35 | 今日もまた老年プログラマー