あまつぶ

6.17(2)

 午後。暑いな、今日。これを書いたら飲み物を買ってきて、自転車のパンクをなおしてもらいにいって、ちょっと適当に走ってこようかな。

 一応ImprMailの続き。文字列の扱いは全部C文字列で統一することにして、strcatでつなぎまくる方法で、一応ソース完成。が、コンパイルして動かしてみたら、まずはInternetConfigの設定が読み込めませんでしたというエラーが。あれれ。ソースを確認してみると、読み込むバイト数の設定がまずかったみたい。修正して再度動かしてみると、あっさりフリーズ。一度にいろいろ作りすぎてどこがまずいのかわからんので、上から順に…。と、MacTCPのストリームを作るところで止まってしまっていることがわかった、と、ここまで。デバッグはまたあとにしよう。てれほ時間帯以外にデバッグするのはしんどそうだし。
 それはそうと、HyperTalkで作っていたバージョンでは一応状況(?)をメッセージボックスに表示するようにしていたんだけど、、外部関数からメッセージボックスに表示するってどうやってやるんだろう。たぶんなんか方法があるんだろうと思いつつ、それを使わずに専用のステータス表示ウィンドウみたいなものを作ってみてもおもしろいかな? そんなことよりちゃんと動くようにするのが先だが…(笑)。

 日が変わって明日になったら続きができて一応動くところまでいっているんじゃないかとちょっと期待。でも、やるの、自分なんだよなー。



6.17

 ここのところ常に熱っぽいな。はかると6度9分くらいなんだけど、平熱は5度9分くらい(って、平熱自体をはかったのって、いつくらいだろう)だから気にせずなにかに集中していればなんともないんだけど、ちょっとぼーっとしたときに、頭が痛かったりする。集中力のいる作業を長時間、、とか、なかなかできないなぁ。

 またImprMailの話。んー、全然予定通りいかないな。ま、予定なんてあってないようなもんだけど。外部関数でやっている部分はほぼそのままコピーしてHyperTalk部分をCで、、って感じだからそんなにめんどくさくないかなと思ったのだけど、そうでもなかった。外部関数になっていたものをサブルーチン化するのはそれほど面倒でもなかったんだけど(数が多いから時間はかかったけど)HyperTalkをCで書き直すのが…。やはり文字列の扱いが一番めんどくさい。ある文字列変数の前になにか追加する、、とか思ったら、HyperTalkなら「put ~ before ~」とかでできるし、単に接続してっていうなら「~ & ~」ってできてしまうから無茶苦茶楽なんだよな…。これをCでやろうと思ったら、、めんどくさい。手抜きしてsprintfとか使ってやろうと思ったら、なぜかリンクでひっかかってしまう。なんかあらためてHyperTalkのすごさを実感したって感じか。
 と、ここでつっかかって今日は終わり。外部関数のサブルーチン化はたぶんできたはずだから、、あとはメインルーチンを書くだけなんだけど。文字列の扱いについては、いろんな方法があるからそこもちょっとややこしいところ。HyperCardのグローバル変数から内容を取り出すと、C文字列へのハンドルで、InternetConfigの設定を取り出すと、Pascal文字列へのポインタ。最終的にSMTPサーバ(っていうかMacTCPに、か)にデータを送るときにはC文字列(正確には別にそうでなくてもいいのか。べたな文字列?)へのポインタにしてやらないといけないから、、しかも得られた文字列をつなげたりなんだりして、、だー!! ふう、また後日がんばろう。

 次回は、続きがいけてれば続き。いけてないときは今度こそはいぱかメーラーかな? メール送信外部関数の次はPOP3サーバからメールのタイトルのリストを取り出す外部関数でも作ろうかななどと画策中。今度はMIMEデコードルーチンをかかないといけないな。エンコードはiso-2022-jpだけ考えていればよかったけど、デコードはもう少し考えないといけないか…。まあ、iso-2022-jpとus-ascii以外はやりたくないけど(っていうか知らん(笑))。


to June 16, 1998 ↑ to June index → to June 20,1998