TNMPOP3で日本語名の添付ファイルを受信したい

解決


うめ  2003-07-03 14:48:28  No: 4004  IP: 192.*.*.*

いつもお世話になっております。
このたび、TNMPOP3コンポーネントを用いてメールを受信しております。
流れ的には、
接続→受信数チェック→受信→コード変換→切断
という形になると思いますが、日本語名を含む添付ファイルを受信しようとすると、上記の流れの中の「受信(GetMailMessage)」のところで例外をおこしてしまいます。
例外を起こさないためにはいかなる方法をとるのがよろしいでしょうか。  

例(骨組み)
if NMPOP3.MailCount > 0 then        
begin
    NMPOP3.AttachFilePath := 'C:\';     //受信フォルダ
    NMPOP3.GetMailMessage( 1 );         //受信  ※ここで例外発生!!
      ・
      ・
      ・
end;

編集 削除
にしの  2003-07-03 15:31:30  No: 4005  IP: 192.*.*.*

TNMPOP3の環境がないので未確認ですが、
http://www2.big.or.jp/~osamu/Delphi/delphi-browse.cgi?index=049267
こちらをどうぞ。

編集 削除
うめ  2003-07-03 15:55:19  No: 4006  IP: 192.*.*.*

ファイル名を受け取るタイミングをイベントで受け取り、そこで文字コードをデコードすればよいわけですね。
ありがとうございました。

procedure TMailRcvForm.NMPOP3DecodeStart(var FileName: String);
var
    szBuffer: string;
begin
    szBuffer := DecodeHeaderString(FileName);  //デコード
    FileName:= jis2sjis( szBuffer );           //SJISに変換して戻す
end;

※jconvertを使用させてもらっております

編集 削除