68user's page 掲示板

Prev< No. 505〜513> Next  [最新発言に戻る] [過去ログ一覧]
No. 505 # 山井 孝雄 [E-mail] 1999/11/02 (火) 21:16
初めて掲示板を利用させていただきます。
POP3サーバーのメールをWWWブラウザインタフェースで読み出すCGIを作っています。「POP3クライアントを作ってみよう(1)(2)(3)」を利用させていただき、あらかたの処理ができるようになりました。
感謝いたします。
早速の質問ですが、Subject及び添付ファイルのファイル名に日本語が使われているとき、nkfでの変換を照会されていますが、ntfの組み込みの方法についてアドバイスいただければ幸せです。
Linuxではnkf17をうまくインストールできた(まだ試験はしていない)のですが、WindowsNTへのインストール方法がわかりません。
WindowsNTでもLinuxと同じようにできるのでしょうか。
Makefileのshar:以降の書き換えでいけるのでしょうか。それともSystemコールでnkf32.exeを使うのでしょうか。
初心者に毛の生えたレベルでやっています。方法またはその方法がかかれたURLがありましたら教えてください。

No. 506 # 山井 孝雄 [E-mail] 1999/11/02 (火) 21:24
nkfについての質問(追伸)
こちらのシステムの説明が抜けていました。
WindowsNT4
IIS3
perl5.005_03(ActivePerl Build 513)+DBI+DBD-ODBC
です。

No. 507 # 68user 1999/11/02 (火) 22:04
> WindowsNTでもLinuxと同じようにできるのでしょうか。
Cコンパイラはお持ちですか? あるならソース持ってきてコンパイルすればいいでしょうけど、
コンパイラがないならバイナリインストールすればいいです。

ただ、nkf -m でやるなら テンポラリファイル経由でデータを受け渡したり、
IPC::Open2 などを使わなきゃいけないので面倒です。毎回プロセスを起動しなければ
いけないので重くなりますし。

なので、http://www.cc.rim.or.jp/~ikuta/mime_pls/ を持ってきて
    require 'mimer.pl';
    $data = &mimedecode($data,'EUC');
とした方がいいと思います。
    http://X68000.startshop.co.jp/~68user/cgi-bin/wwwboard.cgi?log=1999-09-16
に書いた MIME エンコードの逆ですね。

No. 508 # ひでさん [E-mail] 1999/11/02 (火) 23:03
突然現れて質問ばかりで申し訳ありません
今一つ教えてください
データーを分割して自動で読み取る為には?
たとえば1000のデータが入った@DATAがあるとします
このデーターを100ずつ順に読み取るには
read,seekを使って読み取る事は、可能だと思いますが
順に100ずつ1000のデータを読み取るにはどのような方法があるでしょうか
よろしくお願いいたします

No. 509 # 68user 1999/11/02 (火) 23:11
> たとえば1000のデータが入った@DATAがあるとします
配列 @DATA に既にデータが入っているのですか? なら splice を
使えばいいでしょう。「100ずつ順に」*何をしたいのか* が
わからないので、これ以上はなんとも言えません。

read/seek は、配列 @DATA が空で、ファイルから @DATA に
読み込むときに使うものです。でもまぁ perl なら、わざわざ
read/seek のような低レベルな関数を使う必要はないでしょう。

No. 510 # ひでさん [E-mail] 1999/11/02 (火) 23:28
ありがとうございます
実は、前の質問と関連がありまして
データーに入ったメールアドレスをBCCで送信する際に
一度に多くのデーターを打ち込むとサーバに負担が掛かると思い
たとえば100ずつ読み込んで送信をしたいというわけなんです
一般的に一度にどれくらいのBCCだったら遅れるんでしょうか?
サーバのレスポンスも関係があると思いますが・・。

No. 511 # 68user 1999/11/02 (火) 23:42
@DATA に1000個入っていて、100ずつ送信したいなら
    while (@DATA){
        @addrs = splice(@DATA,0,100);
        $CC = join(",\n ",@addrs);
        メール送信
    }
でいいです。

でもまぁ、1000 送るならそれなりに時間がかかりますが、負荷がうんぬんと
いうよりは、SMTPサーバが
    DNS(MX)引いて
    相手先に connect して
    SMTP しゃべって
    本文を送る
のに時間がかかる、という感じでしょうか。ほとんどは相手を待ってるだけです。

別に1000個 Bcc が書いてあっても、並行して1000のコネクションを
張るわけではないので(SMTPサーバの仕様にもよりますが)、マシンの
負荷はそんなに気にしなくてもいいでしょう。

それでも1000は多いと思うなら、100ごとに分割すればいいんじゃ
ないんでしょうか。ただしテストは入念にやって下さい。

No. 512 # ひでさん [E-mail] 1999/11/02 (火) 23:50
68userさん
重ね重ねありがとうございます
十分検討&テストしてやってみます
本当にありがとうございます

No. 513 # かりり 1999/11/03 (水) 02:33
本日付けで復帰しました
でも、CGIの使えないallesでした。(w
テレホの都合上。一年はアレスです。
webpageを一応作るので、リンクさせて下さいね。
友達のwebspaceを借りる予定なのでcgiは諦らめてません!!
あと、質問なんですけど、systemfileのddlem.dll
ってファイルが起動するたびに、「壊れています」と言う表示が出ます
不都合はないんですけど、これって大事なファイルですか?
スキャンかけてもエラーが出ないんですけど。

Prev< No. 505〜513> Next  [最新発言に戻る] [過去ログ一覧]