|
Отправить html-email, при этом оформить его как RE на другое письмо (.eml, во входящих)
|
|||
---|---|---|---|
#18+
В продолжении старой темы: Нарисовать стандартное письмо email Сразу оговорюсь, никаких Outlook (который Office). Делаю для себя, а мне нравится Почта Windows (аналог доброго OE). Надо чтоб письмо клеилось по шаблону, при этом оказалось в "Исходящие" (с возможностью чуть взглянуть его, чуть подправить если надо, подписать и т.п.) Ну а после лежало в "Отправленные" (т.е. автоматика типа CDO/.Net.Mail не нужна, особое причесывание под Win-стандарты тоже не нужно). Первую задачу я решил. Т.е. есть некий html-шаблон, я его правлю, подставляя %CustomerName%, и т.п., можно вставлять текст, можно "куски html", в общем в итоге это письмо с htmlBody уходит в "Исходящие" вот таким простым кодом (с использованием древнего VB6-ocx): Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24.
И заметим, уходит в HTML-формате, хотя SimpleMAPI этого типа не умеет (трюк: .MsgNoteText -пустой, а HTMLBody это вложение). Но встала другая задача: Надо "Ответить" (либо "Ответить Всем") т.е. создать RE на письмо которое пришло во "Входящие". Причем сделать это в формате HTML (то на которое отвечаю суть HTML - и должно цитироваться в HTML ну и мой шаблон в HTML в ответ). Грубо, надо получить HTML-страницу пришедшего письма в RE-формате (как это делают почтовики), ну и в нее сверху дописать свой шаблон. Нужны идеи как и какими средствами это сделать. Ковырять могу так: 1) SimpleMAPI: есть доступ к "Входящие", Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Скажем запихнуть заголовки в ListView, ткнуть в нужное, дальше можно даже сделать методы .Reply .ReplyAll сверху дописать текст и "отправить" - вроде то что надо, но это PlainText а мне надо HTML -не годится. Как вариант можно конечно из этого метода выдрать PlainText-RE и адресатов и воткнуть в свой HTML-шаблон вниз, его и отправить, но решение половинчатое - та часть что я "цитирую" (на что отвечаю) будет TEXT. 2) CDO.Message Ну в принципе путь к папке Inbox я знаю, там лежит набор .eml. Можно письмо мышкой DragDrop из входящих перенести и будет тоже .eml Смысл в том что вычислить путь/получить .eml на который отвечать я допустим смогу. Дальше ковырять его через CDO. Исходный HTML допустим вытащу, но он будет не в RE - формате. И я не уверен что CDO.Message умеет делать генерить .Reply Ну вот такие предварительные идеи. М.б. кто подаст еще идей? Плохо конечно что в Почта Windows (OE) нет своих API (как в Outlook Office). Вернее они есть: Windows Mail (formerly Outlook Express) но не для средних умов, при этом глючные и плохо программируются через VB/.Net. Овчинка в данном случае выделки не стоит. Посему что угодно, только не их. Проще думаю смухлевать из подручных средств. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2016, 04:22 |
|
Отправить html-email, при этом оформить его как RE на другое письмо (.eml, во входящих)
|
|||
---|---|---|---|
#18+
Сгенерить HTML-Reply на исходный .eml вроде удалось через CDO.Message. Вполне-таки сносно. Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2016, 22:54 |
|
|
start [/forum/topic.php?fid=20&fpage=59&tid=1400495]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
28ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
42ms |
get tp. blocked users: |
2ms |
others: | 259ms |
total: | 372ms |
0 / 0 |