Я создаю сообщение MIME на сервере Domino, но получаю нестабильные результаты в зависимости от сервера элементов.
Подробности: я создаю заметку со встроенными изображениями, исходные файлы хранятся в файловой системе сервера.Изображения, вставленные в заметку, выглядят следующим образом:
'container is a parent mime entity, where images will be stored
For i = 0 To Ubound(images)
If Dir$(images(i).FileName) = "" Then Error 15001, ERR_FILE_NOT_FOUND
Set stream = session.CreateStream
stream.Open images(i).FileName, "binary"
Set child = container.CreateChildEntity
child.SetContentFromBytes stream, images(i).ContentType, ENC_NONE
child.EncodeContent ENC_BASE64
fileName = "i" + CStr(i) + "." + ExtractFileExtension(images(i).FileName)
Set header = child.GetNthHeader("Content-ID", 1)
If header Is Nothing Then Set header = child.CreateHeader("Content-ID")
header.SetHeaderVal "<" + fileName + ">"
Set header = child.GetNthHeader("Content-Type", 1)
If header Is Nothing Then Set header = child.CreateHeader("Content-Type")
header.SetHeaderValAndParams images(i).ContentType + {; name="} + fileName + {"}
Set header = child.CreateHeader("Content-Disposition")
header.SetHeaderValAndParams {inline; filename="} + fileName + {"}
stream.Close
Next
Вот заголовок результата:
Headers: "Content-Transfer-Encoding: binary
Content-Type: image/jpeg;
name="i0.jpg"
Content-Disposition: inline;
filename="i0.jpg"
Content-ID: <i0.jpg>
"
Body: "i0.jpg"
Он работает в любом почтовом клиенте, кроме Lotus.В зависимости от сервера, на котором была создана памятка, Lotus может показывать встроенное изображение и вложение или только встроенное изображение (см. Прикрепленные изображения).
Отображается ОК
Плохая визуализация
Код Ls точно такой же, записки точно такие же (хорошо, кромеимена серверов, unid, значения времени), но заметки отображаются по-разному, заголовок Content-Disposition игнорируется.
После тщательного изучения я обнаружил одну небольшую разницу в полях $ FILE для прикрепления mime, см. рис:
Когда свойство "host" имеет значение "2304", тогда рендеринг нормальный, когда он установлен в "MSDOS / OS2", тогда встроенное изображение дублируется как вложение.
Итак, вопросКак я могу установить это поле вложения параметр HOST?Или есть ли способ заставить клиента LN соответствовать заголовку Content-Disposition?