このページは福井県立大学の田中求之が2006年1月まで運用していた Mac のサーバ運用に関する会議室 「Web Scripter's Meeting」の記録です。情報が古くなっている可能性がありますのでご注意ください。

HyperTalk -> C (^^;

発言者:大分県 安東
( Date Tuesday, April 22, 1997 17:26:54 )


#会議室の趣旨と異なるかもしれませんが宜しくお願いします。_(..)_

HyperTalkで作った簡単なTCP/IPプログラム(pop)をDOSマシンで動
かすために、みようみまねで、Cに移植しているのですが、つまって
しまいました...よろしければアドバイスお願いします。(^^;
(HyperTalkをCで記述するとどうなるのか ?)

1.サーバーがら受信したメッセージの行数を知りたい。

  put (the number of lines of tcpMessage) into l

2.繰り返し変数でコマンドを発行したい。

  repeat with K = 1 to 5
    put "retr " & K into tcpCommand
  end repeat

よろしくお願いします。_(..)_


田中求之 さんからのコメント
( Tuesday, April 22, 1997 17:52:05 )

何をどうしろというのかわからないのですが? ようはCに書き換えた場合に
どうなるかということでしょうか?

>1.サーバーがら受信したメッセージの行数を知りたい。

tcpMessage 中の CR の数を数えるだけでいいのではないですか?
(それすらも作れないならCでのコーディングはやめたほうがよいのでは?)


>2.繰り返し変数でコマンドを発行したい。

これは、DOS 側でどのように TCP のコマンドを発行するようにしているか
がわからないと、なんとも答えようがないと思いますが?? HyperTalk
を見ても、なんで put を繰り返すだけでコマンド発行になるのか理解
できません(TCP 周りに何を使って、どのような仕掛けになっているのか
がわからない)。


HyperTalk はデータに型がありませんし、メモリーの獲得/廃棄などは
自分で考えなくてもよいという言語ですので、Cにいきなり持っていくには
かなり注意しないといけないと思います。

大分県 安東 さんからのコメント
( Tuesday, April 22, 1997 18:09:32 )

アドバイスありがとうございます。(^;)

>>Cに書き換えた場合にどうなるかということでしょうか?

です。

送信プログラムについては移植?!出来たので、送信もやってみようと思った
のですが...

>>メッセージの行数...CR の数を数えるだけ...

なるほど。古いテキスト?!の事例にもCRの数を数えるようになっていたので
すが、何かライブラリでもあるのではないかと思ったのです。

>>繰り返し変数でコマンドを発行...、DOS 側でどのように TCP のコマンド
>>を発行する...

NetEventなどと同じで、サーバのpopperと会話するだけなのです。

メールを受信するために、listコマンドでメールの件数をチェックし、その
件数分retrコマンドを発行します。

>>Cでのコーディングはやめたほうがよい...かなり注意しないといけない...

うっ...またリセット...(^;)

今後とも宜しくお願いします。_(..)_