The project of U-WA-
http://uwa.potetihouse.com/
トップページ > 記事閲覧
アイコン MultiPart の連続生成について
日時: 2014/10/06 20:29
名前: はなお

TKMP.Writer.MultiPart を連続して生成すると、同一の boundary が生成されるように見受けられる。

' テスト用コード
For i = 0 To 100
Dim _wk = New TKMP.Writer.MultiPart
Debug.WriteLine("content-type " & _wk.Headers("Content-Type"))
Next

つまり、階層用に複数のTKMP.Writer.MultiPartを生成すると、タイミングにより、boundary が重複してしまう為、受信メーラでの解析に失敗する。

回避策としては、boundary が重複しないところまで、TKMP.Writer.MultiPartを生成すること?

' 回避コード
Dim _checkBoundary = (New TKMP.Writer.MultiPart()).Headers("Content-Type")
Do While True
Dim _checkBoundary2 = (New TKMP.Writer.MultiPart()).Headers("Content-Type")
If Not _checkBoundary.Equals(_checkBoundary2) Then
Exit Do
End If
Loop
メンテ

Page: 1 |

ファイル Re: MultiPart の連続生成について ( No.1 )
日時: 2014/10/09 11:44
名前: Toki◆pRU.c9X.EOI

マルチパートで使用している boundary の値はSystem.Randomで作成し
シード値はデフォルトのSystem.Environment.TickCountを使用しています。

ただ、System.Environment.TickCountはミリ秒単位のため
ご指摘のコードでは同一の値を作成する可能性があります。

現状ではSystem.Environment.TickCountが変化するまで
新しいTKMP.Writer.MultiPartクラスのインスタンスを作成しないことしか対策がありません

根本的な対策はバージョンアップで対応させていただきます。
メンテ
ファイル Re: MultiPart の連続生成について ( No.2 )
日時: 2014/10/15 14:48
名前: はなお

ご回答ありがとうございます。了解です。
メンテ

Page: 1 |

題名 スレッドをトップへソート (必ず題名内に日本語を使用してください)
名前
E-Mail
URL
パスワード (記事メンテ時に使用)
コメント 顔smile01.gif 顔smile02.gif 顔smile03.gif 顔smile04.gif 顔smile05.gif 顔smile06.gif 顔smile07.gif

   クッキー保存