С Новым годом! Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
 Аватар для Prostoplus
12 / 2 / 1
Регистрация: 21.09.2012
Сообщений: 122

Трудности с отправкой файла по почте

18.12.2012, 16:26. Показов 2059. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет! Пишу программу для отправки email-ов, решил добавить в программу функцию прикрепления файлов.
(для отправки использую IdSMTP).
C++
1
2
3
4
5
6
7
8
#include <IdAttachmentFile.hpp>
/*...*/
new TIdAttachmentFile (IdMessage1->MessageParts,"E:\\1.rar");
/*...*/
if (IdSMTP1->Connected()) IdSMTP1->Disconnect();
IdSMTP1->Connect();
IdSMTP1->Send(IdMessage1);
ShowMessage("Письмо успешно отправлено!");
Суть ошибки: вместо того, что бы отправить файл как вложение, программа отправляет его в "текстовом виде" в тексте письма:
Кликните здесь для просмотра всего текста
This is a multi-part message in MIME format

--umZ7gRuyZzwopk6HSc=_56IvpoS3J76YIO
Content-Type: text/plain; charset="Windows-1251"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

=F4=E0=E9=EB

--umZ7gRuyZzwopk6HSc=_56IvpoS3J76YIO
Content-Type: application/octet-stream;
name="????? 16.docx"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="????? 16.docx"

UEsDBBQABgAIAAAAIQAJJIeCgQEAAI4FAAATAAgC W0NvbnRlbnRfVHlwZXNdLnhtbCCiBAIooAAC
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC0
lE1Pg0AQhu8m/geyVwPbejDGlPag9ahNrPG8LkPZyH5kZ/v17x1KS6qhpVq9kMAy7/vMCzOD0UqX
0QI8KmtS1k96LAIjbabMLGWv08f4lkUYhMlEaQ2k bA3IRsPLi8F07QAjqjaYsiIEd8c5ygK0wMQ6
MHSSW69FoFs/407IDzEDft3r3XBpTQAT4lBpsOHgAXIxL0M0XtHj msRDiSy6r1+svFImnCuVFIFI
+cJk31zirUNClZt3sFAOrwiD8VaH6uSwwbbumaLx KoNoInx4Epow+NL6jGdWzjX1kByXaeG0ea4k
NPWVmvNWAiJlrsukOdFCmR3/QQ4M6xLw7ylq3RPt31QoxnkOkj52dx4a46rppLbY q+12gxAopFNM
vv6CcVfouFXuRFjC+8u/UeyJd4LkNBpT8V7CCYn/MIxGuhMi0LwD31z7Z3NsZI5Z0mRMvHVI+8P/
ou3dgqiqYxo5Bz4oaFZE24g1jrR7zu4Pqu2WQdbi zTfbdPgJAAD//wMAUEsDBBQABgAIAAAAIQAe
kRq38wAAAE4CAAALAAgCX3JlbHMvLnJlbHMgogQC KKAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAjJLbSgNBDIbvBd9hyH032woi0tneSKF3
IusDhJnsAXcOzKTavr2jILpQ217m9OfLT9abg5vU O6c8Bq9hWdWg2JtgR99reG23iwdQWchbmoJn
DUfOsGlub9YvPJGUoTyMMaui4rOGQSQ+ImYzsKNc hci+VLqQHEkJU4+RzBv1jKu6vsf0VwOamaba
WQ1pZ+9AtcdYNl/WDl03Gn4KZu/Yy4kVyAdhb9kuYipsScZyjWop9SwabDDPJZ2RYqw KNuBpotX1
RP9fi46FLAmhCYnP83x1nANaXg902aJ5x687HyFZ LBZ9e/tDg7MvaD4BAAD//wMAUEsDBBQABgAI
AAAAIQB8O5c5IgEAALkDAAAcAAgBd29yZC9fcmVs cy9kb2N1bWVudC54bWwucmVscyCiBAEooAAB
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKyT TU+EMBCG7yb+B9K7FFZdjdmyFzXZq67x3C1T
aISWdMYP/r0VswrKogcuTWaavs/TSbtav9VV9AIejbOCpXHCIrDK5cYWgj1sb08uWYQ kbS4rZ0Gw
FpCts+Oj1R1UksIhLE2DUUixKFhJ1FxxjqqEWmLs GrBhRztfSwqlL3gj1ZMsgC+SZMl9P4Nlg8xo
kwvmN/kpi7ZtE8h/ZzutjYJrp55rsDSC4AhE4WYYMqUvgATbd+Lgyfi4 wuKAQm2Ud+g0xcrV/JP+
Qb0YXowjtRXgo6HyRmtQ1Mf/3JrySA94jIz5H6PoyL1BdPUUfjknnsILgW96V/JuTacczud00M7S
Vu6qnsdXa0ribE6JV9jd/3qVveZehA8+XPYOAAD//wMAUEsDBBQABgAIAAAAIQC9iJ/OFgsAALlb
AAARAAAAd29yZC9kb2N1bWVudC54bWzsXFtv48YV fi/Q/0DwNbAtyXcjUuCV7d0Fkq5he7ePC5qi
ZK5JjkBS1jpPe0mbAlukQNrXNuhbHx03Rtzs2vkL 1D/qNxdSHJISdbEd7ZpZIKZmhsNzm++cOXP5
/IuXtqWcGK5nEqeqludLqmI4OmmYTquqPj3YmVtTF c/XnIZmEceoqqeGp35R+/3vPu9uNIjesQ3H
V9CF421023pVPfL99sbCgqcfGbbmzdum7hKPNP15 ndgLpNk0dWOhS9zGQqVULrGntkt0w/Pwvbrm
nGieKrqz072RtuHgW03i2prvzRO3tWBr7nGnPYfe 25pvHpqW6Z+i79JK2A2pqh3X2RAEzUUE0Vc2
OEHiT/iGm+Ii47v8zS0hAfbFBdewQANxvCOz3Wdj0t7A4l FI0skwJk5sK2zXbZeXUt+LWB5FB1uu
1oUq+h2mussQRoO/ZFtcDlS/fa0meyyXhjEjNEK7iGgYhQT5myEltmY6UTeTiSYu XIyIaez7oUs6
7Yictjldb4+d46gvOjDHoKy0wkZenDVvrA5SQ3f/SGsbqmLrG49bDnG1QwsUdctLCrVItQawOCSN
U/rXP7TEn11XPPxR6W50qyqQB9WnbbypdXyiLojqx0 6DN6hUVvtNGi+1qMUDWAsQjLUnbTQ+0ayq
SiHFAlHdDe/rqrrEHtqaju7Zl3RiEQz1/qcso+lP+u4h8X1iT/q2a7aOJv606Xhmw3g06bf5688m
e32B6TMmfu+I6oqJX7cMzaVCjwsaP5umBeWU2H9M nfAUxg4r9I2XfjnS6peEHIed0da0cdN0PX+P
hNZiafFfrLJOrI4NT8aa03qpwCGPHsCXiWqHPAt/wdg4M5FVPnTNBrWoFv6iD3wcX12vrFQogbxt
2MR3UQsP2tijjC2vV+rb8Jq86AA2FpUJi951t1+K x7phWV9pfCQw0w1Z4wMhsvLIwDLrOTlRXyEn
4iuu4Ml9ZMQNbXl5JWQlbKEzqnTRXhcDkzENdhIk jaxryAz/MnVNew31f2A6flXdWucGcLJpmS0H
9cyYOPshuYJAOtIHSH1vNy72sN2W0dQ6Fj4SKUTU 7NKi+vLyYr3CwKrNJeABLgAiaHRoIOgAclSW
Spy8FzpKuZ0jAjJcXirk6O4Qx/fQQPN00zygDFZVW3tB3EebGK1UEkf0IV3DMO+QGx jrDKoUxEQ2
JrFGFXZzX6VQGfK1tMZ5sjQmAcZr53ju6SYtBlni qyz626CSAo9t1/AM98RQa8Hfg/fBWXAenCnl
lXmFDRj+GqMYH2Ga47zEJJ/JC1D6+QOYrtbxDky/Yz3xEfEIGWbVRVJM8xMjvBb8BxT+CDqvg6ve
u3mJRip3PswxJvDD50M0UkLMYAQvfKDHWIGn+zQG uq/HEN6/Zw6W6j7O/2yhnjC3zOEUFsZQT24+
e6iXHq/djaH4Q4cpx+poZI4GKWnoDQElXZMNJ8IRDCUPtiM h4aKEMcDAUEczRjSdgqcxfXoY36X+
wfH3ddds+zEIl8uHyBv6Dv1OLfghuOi9Ci6C//Ze9d4GPwe/wNkAy3+lxQlBHyKWpKmCfV9zaaRt
RiGgRn3z84fkgaYfc4cXtt1m8w7ekpE0praqqsxW aGDJ8lHZPeu9Ca7B8HVwnuDu7gnLGZbU7gt/
ymcLUHsicJb8SeFPR5wx3sksQnaQeyLUXixvr7P5 JItZb8afwiy0JiYOCCQ57Iwxo6iqz0zdJ66p
OfVTNsdm04lEcQxXTPYci+3ZN0MwjTnRW5xOTOIv l6cDurQrDzE4XROTVlJO+WA3mb9c5nY1UOZV
9cC0DU/5g9FV9oitIZUZTXoyanTk8JLFMa6G2wCLVL4PLuF K38CZngXve3+ls6LgYrgK8nm4UVMF
mdmyzplh5pOZlNztirr3DYR8FfzS+3NwGVzOmogz fTcibcgkyrdkImWicFykHAMC0wM4VFi6ZuRB
EAPCkFXJA8zOSP0BUeB7mM4HGhH2vsHTz8GHj8KM IGO/SKkUIWAspXRfUyrAmIlDwDTKjYR/sdBG
pHe9r+s0U83SuzzlmxEWymgoUH4gGt4ibfmhmJRv WRoOiTPNSHacM30O5sZS6TRZN8h2WDj5z+Cs
9xpu6iL4iSYtEFRewVFdFImBIjFAZzLxdWGEaCww KLwClczEXoFmAIDkjf4SY7+ERcGj4L+MsYYz
93Q/vuQ3MEjOQ9M+KWAxSlhwcm+KOIo7Tw5fGLqvPHFN ujLbUHZd0nI128ZKruQOKCPC7PifYonv
fu6hKZCHb2z4zZEHimCrOxNDzPSR5yRZyrIEK+Bh YGScTtD1oTAjATUwozcKjIfCHJgymz6U/Io4
hK5tKHWCvNCJFstPZlXdFDu14HtEkzSqvOARpRKc K1j9w4aT3mv8eyfpgxpTHsyL9CCUQfNbYstW
Pztb7OT4FLZKwhCktMtspR1kE8xdeZKbs50csRz3 0P1r08F81sAWwVyqKhnVfSSrTqsSfgATBC7I
ShkI8nfmhCbLEMTMhDlb8CdtV6yqKT32nVSqaqiK B7qe4F/Bj9jJQHffXWNXA924kZA5zg+Q5rZL
Rc9Xz2kIz3Zv8NXSMXVys0zVsE72mjqc3ne9b/H8Bo5IrJf1/jQKI9haMgNsZNuPrAnuPRNrPzL4
yMMiHCuxtR+5eS5WTTz7vaGBFwZOlPXMvWV3O4Jq MDWYGF2UZauF/5MMjOsH/x+yqCLLP1NdRcgD
uxWbmD+h0yHMLmY2pzaCXe5NDiPxLftQ7gyiym8f QUiLJWsSsHz8Yc/dijeVJwUk1+ozIVKggIj0
/NpnnyVJum0xxb4+IOCYU5iLe83iqA90E+85/l1jfn82F5xjD5L4IVGObnOn9aXl1Z3VbZqVYNtW
+F4OuZA7PlFGRVHM9Yu5/m2fVZNNUARkicKY45NrWPwcM9hbm+vfXjh925Ajr 2BlHVqTHN+6BCwp
xxeTtYBRecJ8Q3LKJzobPvPSuHnk3/TU+B9Y47/C1P4DZi3f4igGnSif9f6moJglbIHyl2zHGi3G
9kdU0SIc28AegXkFqQF2gAOV7LhD750S/IpcwWU85dt/50zSXeEUcs7sSgnQ4ujBLB09kFG+cArT
nZ+WThJOsKhXKUnAcv+cAi5G0MlWfCNJWJKX8sXB PHpKDQtxb1iO94o+Ab0R19MNy1izw4MS/NR7
NS/JuADvArwH388C65Cc12yt3t0r8M6JVOk4zsyb50W iUwfSi+xCkxzyYEfZgXTsygoJl+4e+0fl
o1ZJbT3JzHXc3nxrVEqzJZ6auqRW/bw27scZvOyXZ1FTzW04b7DmKHmW3HeSMJNs6get9 d0t7dkK
oBtnRmJiZlTAYgm6kRzJQXpWEWcU3/a+G4mHmVbESBzMjBawbn/Jbs65ZOv3FzjI+HYkDgodjLpf
LhFlp8Go9xe2f4LdXkRTJ+PIf/xQu8iTFwvEuJMRQuD3993JbQz3JKoeKYj6BKLqjI vgskOmafyc
9nzTahmu2fHq9pZeqduH1GjFDsWMykyczZ9C8CTH BUtNXyONjTw3Mt04jD0ODI89s6CX3d0Je4PC
xX8n1o+zHAnKxCWv0oUBm0srO4vJxdjEFpDYopdo ztWD8zy70Y4/evXesM7obKfd2qcXGeKyzHJ5
nV4GDRPA88raojj22m7h1k2UIgdO2yyy62HZPaxV dW2ZbQHid072a+n9sPi1Wiqz7gwNd85W1dUS
u+qzSQi7zEX8bHX8+N0uOOpG05ligxFtw/jCBdr0ClHUWKZj7Jq+DiIXV8Jtsh5jm+1d57fnQr Lh
ndu1/wMAAP//AwBQSwMEFAAGAAgAAAAhAKVefS3HBgAA1xsAABUA AAB3b3JkL3RoZW1lL3RoZW1l
MS54bWzsWc9uG0UYvyPxDqO9t7ETJ42jOlXs2A20 aaPYLepxvB7vTjO7s5oZJ/WtSo9IIERBHKgE
XDggIFKLuLTv4D5DoAiK1Ffgm5nd9U68oUkbQQXN Id6d/X3//8w3uxcv3YkY2iVCUh43vOr5iodI
7PMBjYOGd6PXObfsIalwPMCMx6ThjYn0Lq2++85F vKJCEhEE9LFcwQ0vVCpZmZuTPixjeZ4nJIZn
Qy4irOBWBHMDgfeAb8Tm5iuVpbkI09hDMY6A7eSb yU+Tx5MDdH04pD7xVjP+bQZCYiX1gs9EV3Mn
GdHXT/cnB5Mnk0eTg6d34foJ/H5saAc7VU0hx7LFBNrFrOGB6AHf65E7ykMMSwUPG l7F/Hlzqxfn
8EpKxNQxtAW6jvlL6VKCwc68kSmCfi602qnVL6zn/A2AqVlcu91utas5PwPAvg+WW12KPGud5Woz
41kA2ctZ3q3KYqXm4gv8F2Z0rjebzcV6qotlakD2 sjaDX64s1dbmHbwBWfziDL7WXGu1lhy8AVn8
0gy+c6G+VHPxBhQyGu/MoHVAO52Uew4ZcrZRCl8G+HIlhU9RkA15tmkRQx6 rk+ZehG9z0QECTciw
ojFS44QMsQ+J3sJRX1CsBeIVggtP7JIvZ5a0bCR9 QRPV8N5PMBTNlN+Lx9+/ePwQHe4/Otz/+fDe
vcP9Hy0jh2oDx0GR6vm3n/z54C764+FXz+9/Vo6XRfyvP3z4y5NPy4FQTlN1nn1+8Nujg2dffPT7
d/dL4GsC94vwHo2IRNfIHtrmERhmvOJqTvridBS9EN MixVocSBxjLaWEf1uFDvraGLM0Oo4eTeJ6
8KaAdlIGvDy67SjcDcVI0RLJV8LIAW5yzppclHrh ipZVcHNvFAflwsWoiNvGeLdMdgvHTnzbowT6
apaWjuGtkDhqbjEcKxyQmCikn/EdQkqsu0Wp49dN6gsu+VChWxQ1MS11SY/2nWyaEm3QCOIyLrMZ
4u34ZvMmanJWZvU62XWRUBWYlSjfI8xx42U8Ujgq Y9nDESs6/CpWYZmS3bHwi7i2VBDpgDCO2gMi
ZRnNdQH2FoJ+BUMHKw37JhtHLlIoulPG8yrmvIhc 5zutEEdJGbZL47CIfU/uQIpitMVVGXyTuxWi
7yEOOD423DcpccL98m5wgwaOStME0U9GoiSWlwl3 8rc7ZkNMTKuBJu/06ojGf9e4GYXObSWcXeOG
Vvnsywcler+pLXsNdq+ymtk40qiPwx1tzy0uBvTN 787reBRvESiI2S3qbXN+25y9/3xzPq6ez74l
T7swNGg9i9jB24zh0Ymn8CFlrKvGjFyVZhCXsBcN OrCo+ZhDKslPaUkIl7qyQaCDCwQ2NEhw9QFV
YTfECQzxVU8zCWTKOpAo4RIOk2a5lLfGw0FA2aPo oj6k2E4isdrkA7u8oJezs0jOxmgVmANwJmhB
MzipsIULKVOw7VWEVbVSJ5ZWNaqZJulIy03WLjaH eHB5bhos5t6EIQfBaAReXoLXBFo0HH4wIwPt
dxujLCwmCmcZIhniAUljpO2ejVHVBCnLlRlDtB02 GfTB8iVeK0ira7avIe0kQSqKqx0jLove60Qp
y+BplIDb0XJkcbE4WYz2Gl59cX7RQz5OGt4Qzs1w GSUQdannSswCeD/lK2HT/qXFbKp8Gs16Zphb
BFV4NWL9PmOw0wcSIdU6lqFNDfMoTQEWa0lW//lFcOtZGVDSjU6mxcIyJMO/pgX40Q0tGQ6Jr4rB
Lqxo39nbtJXykSKiGw72UJ+NxDaG8OtUBXsGVMLr D9MR9A28u9PeNo/c5pwWXfGNmcHZdcySEKft
VpdoVskWbhpSroO5K6gHtpXqbow7vSmm5M/IlGIa/89M0fsJvI1YGOgI+PA2WWCkK6XhcaFCDl0o
CanfETBImN4B2QLvf+ExJBW80za/guzqX1tzlocpazhUqm0aIEFhP1KhIGQL2pLJvpcw q6Z7l2XJ
UkYmowrqysSq3Se7hPV0D1zSe7uHQkh1003SNmBw R/PPvU8rqB/oIadYb04ny/deWwP/9ORjixmM
cvuwGWgy/+cq5uPBdFe19IY823uLhugH0zGrllUFCCtsBfW07 F9RhVNutbZjzVg8v5gpB1GctRgW
84EogXdKSP+D/Y8Kn9mvI3pD7fFt6K0IPm5oZpA2kNXn7OCBdIO0i 30YnOyiTSbNyro2HZ2017LN
+own3VzuEWdrzU4S71M6Ox/OXHFOLZ6ls1MPO762a8e6GiJ7tERhaZgdbExgzJe 14pcv3r8NgV6H
bwgjpqRJJviOJTDM0F1TB1D8VqIhXf0LAAD//wMAUEsDBBQABgAIAAAAIQCoJaXvjwMAAOUIAAAR
AAAAd29yZC9zZXR0aW5ncy54bWy0Vltv2zYUfh+w/yDoeY4kX5JWi1N0bry1iNehSn8AJdEyEd5w
SFlxf/0OSTFqmjQoVuzJ5Ll85/bxyJdv7gVPjhQMU3KdFmd5mlDZqJbJbp1+vt3OXq WJsUS2hCtJ
1+mJmvTN1a+/XA6lodaimUkQQppSNOv0YK0us8w0ByqIOVOaSlTu FQhi8QpdJgjc9XrWKKGJZTXj
zJ6yeZ6fpyOMWqc9yHKEmAnWgDJqb51LqfZ71tDx J3rAj8QNnu9U0wsqrY+YAeWYg5LmwLSJaOK/
omGJhwhyfKmIo+DRbijylyzHcgcF7YPHj6TnHDSo hhqDAxI8lCsIkw8wxfIJ0EOrz7DVWYidOSh0
L3J/mjI3/In/M9MOU7xhNRAIY0YCuCxEU77vpAJScyTVUCzTK2TU F6VEMpSaQoNDQjrmeZo5BRaj
9pUllqLaaMq552fDKUGwoeyACGTWOg0S79PSPem5 vSV1ZZVGoyPBnC/yVwGyORAgjaVQadIg2kZJ
C4pHu1b9rewGWQrYxNHDc9alE9hbBf6jhyQCqwjS kdM71VKXWQ/sSaO+22jn4LPEfvgang+k8L0C
aymWxmllT5xuMfmKfaFvZfuhN5bhK/HM/okMXkqAShf5I77u25OmW0psj236n4L5SWw50zsGo OC9
bJEbPxssi0N048Tl15p4+KSUjWPI89Xr+eZ6ZIwz mzT56mJ7cR269FizWhTXr0fifqP5Ltrb5fl2
8SzaZrVabOYuDuY8ZipKt2z+gavLcHLjT0SgzoaI GhhJdm4doZcoa7j7g8morymuY/q1purrqJzN
gsIIwvkW30dU+HJE2TKj39G9h+U7At2EO1rAs1J8 ix8esNzbpvAnqF6HaAMQHcYawxXL5YjHpL1h
IspNX1fRS+JK+UrVy/bjERxgNrVnKC1+ifzzuCGyi9ODfvbpszNFFnCo3N eK7ojWuAbQpO6KdcpZ
d7CFo7TFW4tfLX+pu/mom3sd3pzOX0jjKkPr8eAMwhGtxsMkW0TZYpLhTg 52y0m2irLVJDuPMvxq
DuUB3yDgQrzDRROPTr5XnKuBtn9F4Tp9IgpNMAei Kc7V7Ut8CKr0gnGBmuRY0nvcxrRlFv8MaNYK
cu+W8/zcuY/WnJxUbx/ZOp0z1o+kSUssQXc/qkfOnuLf5DKULW0Y0rE6iXpaz7+FxDkztqIaN7lV
gCX75fm7R57+n1z9CwAA//8DAFBLAwQUAAYACAAAACEAF6AWTgIBAACsAQAAFA AAAHdvcmQvd2Vi
U2V0dGluZ3MueG1sjNDBSgMxEAbgu+A7LLm32ZUi snS3IFLxIoL6AGl2dhvMZMJMaqxPb9qqIF56
yySZj5l/ufpAX70Di6PQqWZeqwqCpcGFqVOvL+vZjaokmTAY TwE6tQdRq/7yYpnbDJtnSKn8lKoo
QVq0ndqmFFutxW4BjcwpQiiPIzGaVEqeNBp+28WZ JYwmuY3zLu31VV1fq2+Gz1FoHJ2FO7I7hJCO
/ZrBF5GCbF2UHy2fo2XiITJZECn7oD95aFz4ZZrFP widZRIa07wso08T6QNV2pv6eEKvKrTtwxSI
zcaXBHOzUH2Jj2Jy6D5hTXzLlAVYH66N95SfHu9L of9k3H8BAAD//wMAUEsDBBQABgAIAAAAIQB7
DICJtAcAADo9AAAaAAAAd29yZC9zdHlsZXNXaXRo RWZmZWN0cy54bWy0m21T2zgQx9/fzH0Hj99D
HqDkyjTtUOgDM7RHCcy9VmyFaLAtnx8I3Ke/lWQrxo7j3dh9VeJY+9vVrv4rqPTh00sYOM88SYWM
5u7keOw6PPKkL6LHuftw//XoL9dJMxb5LJARn7uvPHU/ffzzjw+b8zR7DXjqgIEoPd/E3txdZ1l8
Phql3pqHLD0OhZfIVK6yY0+GI7laCY+PNjLxR9Px ZKx/ihPp8TQF2iWLnlnqFubCpjUZ8whYK5mE
LEuPZfI4ClnylMdHYD1mmViKQGSvYHt8VpqRczdP ovPCoSPrkBpybhwq/ilHJI0odnDNyCvp5SGP
Mk0cJTwAH2SUrkW8DeNQaxDiunTpeV8Qz2FQvreJ J6cNng0Zk4OrhG0gFVuDDXM7JsM3g8LAzIPK
7zardYuT8b5giowoE9YHjAtvmaUnIRORNXPY1FQn F9ZDn/r+lsg8tu7Eop+16+jJ2lLLkuDZ+Eyv
vGpoKclAY+ku1izmrhN659ePkUzYMgCPNpNTR1Wk +xGkwpfeFV+xPMhS9TG5TYqPxSf9z1cZZamz
OWepJ8Q9SAhYCQUY/H4RpcKFbzhLs4tUsJ1frtVbO7/x0qxi7bPwhTtSxPQ/sPnMgrk7nZZPLpUH
b54FLHosnyX50d1D1ZO5y6Ojh4V6tAS7c5clR4sL ZWykwyz/rYQbvwkePmlXYubBygMzbJVxECFQ
MWU0ECq70xkomvlwl6vJZXkmC4g2ALCqWfhYm3HQ JlCqhVFs+JavbqT3xP1FBl/MXc2Chw/Xt4mQ
Ccjo3H3/XjHh4YKH4rvwfa4aRPHsIVoLn/+z5tFDyv3t819ftTwXFj2ZRxm4fzbTVRCk/pcXj8dK
JsF0xFSGf6oBoGGQjgpHO5SLrTfmQY2qH/5bIicmhzspa85US3O0/3tBOuq8N2iqIqoGoO2SfD3p
b+K0v4l3/U3o4u03F7P+XsBGpm9GTG1UqhKf1Ex6pviq83Dyf k/JqhGNKuoc0SiazhGNGukc0SiJ
zhGNCugc0Uh454hGfjtHNNK5d4THtHDVq+hEzwZq Yd+LLOBq/F4BmvSUuqLVOLcsYY8Ji9eOaqx1
t/eJ5SJfZjhXtZweLpaLLJFqu9kxI9Cd1dI9WJO/hPGapQJ25V2gnlN/r7Y+zrdEwPa1A/XOFF8j
Jr0x2dnCbgPm8bUMfJ449/zFZJQw/qd0FmaX0elcz7TeiMd15sCuULXcTthZy6S3z4Sxf yNSPQd7
F9NZSyhdxlE5PGupy3bjP7gv8rCcGsRu5MzoOSHN NYR2cf8UnaoUNVdXZxQqAZgQTLugh6DtI/w3
zYVuX+UY479pRQfaR/hvGteB9nV97M8vWWmu4M8qDmp5zchr91IGMlnlQb kGOuVhRl7BFoELgbyI
rX2USMzIK/iNfDoXnge/uWHqlJyLrY4SKOR0GIpebPhYyEmpyd6EEBE5QTXW lMDqp7UEEFl07/iz
UH8EpjYDrdJ2r9m5nE9aZgBaEGoP/SuXWfceetqieVjKdQR/Lkm5g6OdtKw8LK2oJ9PvCDnu1/gI
oH4dkADq1woJoJb6aN/z2J6Ih/RvjgQWWZZtF9Nlh1bmGVmZLYjWAgbqm4j9V8vqba +FZt9EUMgJ
avZNBIWcnVovs30TwRqsbyJYLV2jPUdVTaUERe6b VZDdCSAiGka8EaBhxBsBGka8EaD+4t0NGU68
ESyyNlhNrYo3AqRfofyqb0FV8UaAyNpg1K74m1HZ 97SV/b/cDiDeCAo5QU3xRlDI2WkTbwRLv0Kp
hBrLSh2CNYx4I0DDiDcCNIx4I0DDiDcCNIx4I0D9 xbsbMpx4I1hkbbCaWhVvBIgsDxZUFW8ESL9C
0Yad4q1X/W8XbwSFnKCmeCMo5OzUBNVuUhEscoJqLCveCJZ+h VIMBUsXNyWoYcQbEdEw4o0ADSPe
CNAw4o0A9Rfvbshw4o1gkbXBampVvBEgsjxYUFW8 ESCyNuwUb70Yf7t4IyjkBDXFG0EhZ6cmqFbn
ECxygmosK94Ilq6X3uKNAOlXDgVRIhpGvBERDSPe CNAw4o0A9Rfvbshw4o1gkbXBampVvBEgsjxY
UFW8ESCyNuwUb71Gfrt4IyjkBDXFG0EhZ6cmqFa8 ESxygmosK3UI1jDijQDpwuwt3giQfuUAkF5F
lDQNI96IiIYRbwSov3h3Q4YTbwSLrA1WU6vijQCR 5cGCquKNAJG1QZ2zhfOi6OOpk5YiwJ4zKE81
oIHTliRhgUWAd3zFE7hVyLtPh/QElhESiC3lgQ3xs5RPDu5g90lLgaBRYhkIqY90v+ pTOpWLCCez
PTcJ7v++dL6bCzCNcbqk3p68gdtD1etC+nqSujgE fmavMVzZicuT5coaXBBS97qKK0D6Tug1XAhi
+saPuuID7+j7VMVFH/1ftgUQfgaYHtOkeGvAeHAZah9l3MC0HH/X2O3di9Kp4hj8drNk3ntzGHOv
l5k68r3Pw0nDQzMRjj4sbrLW9AsuX2lPuhyDlCwD c4UMfriOfAhsU9y+MsnyX5gxBd9f8iD4wRI1
15mM218N+Coz307GusPVTC1llsmwfXyiD4BrT3YZ gJxXnTEfVRDtxRDl4ZInxXHytpKb7phqc461
JfvYWd76Vf6UfvwfAAD//wMAUEsDBBQABgAIAAAAIQB9p0vybwEAAJ8CAAARA AgBZG9jUHJvcHMv
Y29yZS54bWwgogQBKKAAAQAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAACMkr1OwzAUhXck3iHy
njhO+SlRmkqAOoGERBGIzbJv24jEiWzTtBtiYeEB 2HiKLiB4huSNcJI2pAIhRvue8+mcawfDRRJb
c5AqSsUAEcdFFgiW8khMB+hqPLL7yFKaCk7jVMAA LUGhYbi7E7DMZ6mEC5lmIHUEyjIkoXyWDdBM
68zHWLEZJFQ5RiHMcJLKhGpzlFOcUXZHp4A91z3A CWjKqaa4AtpZS0RrJGctMruXcQ3gDEMMCQit
MHEI/tZqkIn61VBPOsok0svMdFrH7bI5a4ateqGiVpjnu ZP36hgmP8E352eXdVU7EtWuGKAw4Mxn
EqhOZVi8FqvysXywipfivXwun4pV8VG8FZ8B7qiq jcZU6XOz/EkE/Hj5l/GnuPJLmEfVS4YkwN2j
SVOXbyIBt0wdvym/mVz3Tk7HIxR6LvFs4tre4ZgQf//Id93bKueWv6rXXCTrtP8kev5ef5u4AYR1
4u0vFX4BAAD//wMAUEsDBBQABgAIAAAAIQAdJ5EkMwcAAEk6AAAPA AAAd29yZC9zdHlsZXMueG1s
tJvfU9s4EMffb+b+B4/faUjCkSvTtENpe2Wm7VECc8+KrRBNbctnKwXur7/VyjHGju1d7D4R/9B+
tNrVd5UgvXn3EEfeT5nlSidLf/rq2PdkEuhQJXdL//bm09GfvpcbkYQi0olc+o8y99+9/f23N/dn
uXmMZO6BgSQ/i4OlvzUmPZtM8mArY5G/0qlM4OFGZ7EwcJndTWKR/dilR4GOU2HUWkXKPE5mx8en
fmEmo1jRm40K5Acd7GKZGGw/yWQEFnWSb1Wa763dU6zd6yxMMx3IPAen48jZi4VK SjPTk4ahWAWZ
zvXGvAJnJq5HE2sKmk+P8VMc+V4cnF3eJToT6wgG 73564r+FkQt18EFuxC4yub3MrrLisrjCP590
YnLv/kzkgVI3MKRgIFZg6/N5kisfnkiRm/NciYMPt/atg0+C3FSsvVeh8ieWmP8HNn+KaOnPZvs7
F7YHz+5FIrnb38t2R9e31Z4sfZkc3a7srTXYXfoi O1qdW2MTdHP/t+Ju+sx5uMKupCKAYIAZsTES
kgJyxBqNlM3B2QLyxV1c7+y4ip3RBQQNAKxqFi5r Iw65ApmzcgkMT+Xmiw5+yHBl4MHSRxbcvL28
ypTOIEmX/uvXlgk3VzJWn1UYSjtfinu3yVaF8p+tTG5zGT7d//4Jk7+wGOhdYqD7pwvMgigPPz4E
MrVpC6YTYSP8zTaAxIFwVDjYoZ166o27UaPizX/3yKmL4UHKVgo7wz3sfycIvd4NBs2sR1UH0C6r
r/PhJk6Gm/hjuAlM3mFjsRjeC9D1oRFxuVHJSnpQjQ5c8lXHYf 66I2Vti0YW9bZoJE1vi0aO9LZo
pERvi0YG9LZoBLy3RSO+vS0a4exsEQgUrnoWzXE0 SBP7RplI2vadAjQdKHVFqfGuRCbuMpFuPVtY
693uEsvVbm1oXUU5fblYrkymk7veEYHqbKfuizX5 Y5xuRa5gldQz9LOBQ39jVz3eX5kKe1F/uORr
+IQLk4Ml7CoSgdzqKJSZdyMfXEQZ7b9pb+VWGb2d GxjWL+pua7zVFktuL+y0ZdDbR8LZ/6JyHIPO
yXTa4kqfcVIMT1vyst34VxmqXbwfGsJq5NTpOSPM NQR2sXuITmyImrOr1wsbAIoLrlzwXUD7hP67
4sK3b2NM6b8rRS+0T+i/K1wvtI/50R1fttJ8gC+tHml6Ldhz90JHOtvsov0c6JWHBXs GlwiaC+xJ
XNonicSCPYOfyad3HgTwzY2Sp+xYPOkog8IOh6Pg ZKP7wg5KTfamDI/YAaqxZgzWMK1lgNiiey1/
KvubGLcYoEqXa83e6TxvGQEoQaQ19PedNv1r6FmL 5lEplwn8XJJLj0abt8w8Kq3IJ1fvGDEeVvgY
oGEVkAEaVgoZoJb8aF/zlDWRDhleHBkstiyXVQzTjqzMC7YylyBeCRipbhL WXy2ztz0XmnWTQGEH
qFk3CRR2dGq1rKybBNZodZPAaqka7TGqairHKXbd rILKlQDBo3HEmwAaR7wJoHHEmwAaLt79kPHE
m8Bia0OpqVXxJoDwFc5X/RJUFW8CiK0NTu2K34z2dQ+tdH+5HUG8CRR2gJriT aCwo9Mm3gQWvsLJ
hBqrlDoCaxzxJoDGEW8CaBzxJoDGEW8CaBzxJoCG i3c/ZDzxJrDY2lBqalW8CSC2PJSgqngTQPgK
RxsOijfO+l8u3gQKO0BN8SZQ2NGpCWq5SCWw2AGq sUrxJrDwFU4yFCxMbo5T44g3waNxxJsAGke8
CaBxxJsAGi7e/ZDxxJvAYmtDqalV8SaA2PJQgqriTQCxteGgeONk/OXiTaCwA9QUbwKFHZ2aoJY6
R2CxA1RjleJNYGG+DBZvAghfeSmI49E44k3waBzx JoDGEW8CaLh490PGE28Ci60NpaZWxZsAYstD
CaqKNwHE1oaD4o1z5JeLN4HCDlBTvAkUdnRqglqK N4HFDlCNVUodgTWOeBNAmJiDxZsAwldeAMJZ
xAnTOOJN8Ggc8SaAhot3P2Q88Saw2NpQampVvAkg tjyUoKp4E0BsbbD7bGG/KHl76rQlCaj7DPa7
GsjAWUuQqMDCwWu5kRkcspL9u0MGAvceMogt6UF1 8b3WPzzaxu55S4KQUWodKY1buh9xl07lIMJ8
0XGS4ObvC++zOwDTaIcp9XznDZweqh4XwuNJ9uAQ 9NM8pnBkJ93vLLfW4ICQPddVHAHCI3KXcCBI
4Ikfe8QH3sHzVMVBH/yXbQGEzwDDNk1KsAVMAIehuijHDUzL9nfEPp292H eq2Ab/tFhy7z3bjNnZ
S2O3fHf1cNrooRsIDzeLu6g1+wWHr7AnfR2DkKwj d4QMPlwmITgGhwDxv2IuWOGDcKbg+YWMoq8i
s2NtdNr+aiQ3xj2dHmOFq5laa2N03N4+ww3g2JND BiDm1c64S+tEezIku3gtMzjB1TXUswND7fax
tkSfOspP/dp/yt/+DwAA//8DAFBLAwQUAAYACAAAACEAMSZk2eECAAAmDAAAEg AAAHdvcmQvZm9u
dFRhYmxlLnhtbMSWXW/aMBSG7yftP0S+b+OEUD7UtIJ0SLvYOm3dbitjDFi L7ch2yPj3O7EDZWrY
SIu6RAQ4tg/xw/uek+vbXyIPNkwbrmSKokuMAiapWnC5StH3h9nFEA XGErkguZIsRVtm0O3N+3fX
1XippDUBrJdmLGiK1tYW4zA0dM0EMZeqYBIGl0oL YuGrXoWC6J9lcUGVKIjlc55zuw1jjK9Qk0af
kkUtl5yyO0VLwaR160PNcsiopFnzwuyyVadkq5Re FFpRZgzsWeQ+nyBc7tNEybNEglOtjFraS9hM
6O8orFPB8gi7TyJHgaDjjyupNJnnwK6KEnTTgAuq sSQCghnJ+VxzN1AQqQyLYGxD8hThGM9wH671
meBefUVhnYGuiTbM7iZmmQ8vieD5dhc1FTfGDxTc 0vUuviGa1zfkhwxfwUBp5jhFHzAc8WyGfCRK
UQKBSbaPxHBT/oiaOb19BJQDN+byuCnRyOWBCORpVuH6N0MvnWckH rhgJvjMquCrEkQeIRLjKyDR
Bx41mV4nItrldQQ7EIkn+/3DTjLYymCY9Jr9PxEZ/ZuIz3M6kYwIkAY5QqIm4EnURLpp42UknmsD
J3s2TyScEkBRZ9QGeZzy1ZqU5oHbMr+3eSuT2iMj p4sp8Ihxhnte5Cf5ZcEoONXyTeOMEyXipA2u
b/7+Q7F7G3UBg0HP3kaHef5imi+aGaiC36jmhW2Fsr PewXsrFOzMCd78o4iQ0io/vRuOnT8Ot/ES
HP1uOH5wahVYRmZb3UojgcIxBIl4y8R4cEQi7TRe IxE8HJxHItG0KxPoJov2DlPXjSt49R2SEaBp
7zDtOIxXXZeC2qjwXPJwrju9oH5SUtltwYJMwRPP pr2y9qCD+7Pu5e5sNcyRrvtCJvG55NG17U4J
PO/dtcujbv91mzk4OqB4jVv+Gw7yOMlXTPPSZOKOxpm YH60jA2CT4IlrNQMcvxWZN2s1zYOaufkN
AAD//wMAUEsDBBQABgAIAAAAIQAhoxce+gEAAOcDAAAQA AgBZG9jUHJvcHMvYXBwLnhtbCCiBAEo
oAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AJxT3W7TMBS+R+IdotyvTrcySnXqCXVCuwBW
qdl2bZyT1iKxLdurVt6Fd0BIE9zwDnkkjps1c4Er chF958fHnz9/houHtsm26Lwyep6PR0WeoZam
Uno9z2/KdyfTPPNB6Eo0RuM836HPL/jLF7B0xqILCn1GI7Sf55sQ7IwxLzfYCj+isqZKbV wrAoVu
zUxdK4mXRt63qAM7LYpzhg8BdYXViR0G5v3E2Tb8 79DKyMjP35Y7S4Q5lNjaRgTkHyOdZlSZ0AIb
slCaIJpStcgnbyg/RLAUa/R8DKwHcGdc5fn5a2A9gsVGOCEDKcjPplNgSQxvrW 2UFIG05R+UdMab
OmTXexWyuB5Y2gKkzArlvVNhxwtgaQjvlSYiZ8B6 QMScWDthN0/shghWUjS4oOPzWjQegT0n4ApF
vNqlUMQXtmG2RRmMy7z6Qpd7mmefhMco2jzfCqeE DiRebOuDPW6sD453X7tv3Y/uO/1/dT+7R2DU
1pf2MF2RYjWJalIvgePGmOzpUOGYaKlCg/66pkOHf/Aep7z3HHrWCZ0EDnv8MXVhWiv0jjYfEGn9
2d/Y0lxG7zzJeZxMDHCnwmZlhaR7mryapFZIKrAiw2B Fd3uY95yAK1LeNXFTspFeY3Xo+bsQzXXb
v1s+nowK+vZuOuTIscOD4r8BAAD//wMAUEsBAi0AFAAGAAgAAAAhAAkkh4KBAQAAjgUAA BMAAAAA
AAAAAAAAAAAAAAAAAFtDb250ZW50X1R5cGVzXS54 bWxQSwECLQAUAAYACAAAACEAHpEat/MAAABO
AgAACwAAAAAAAAAAAAAAAAC6AwAAX3JlbHMvLnJl bHNQSwECLQAUAAYACAAAACEAfDuXOSIBAAC5
AwAAHAAAAAAAAAAAAAAAAADeBgAAd29yZC9fcmVs cy9kb2N1bWVudC54bWwucmVsc1BLAQItABQA
BgAIAAAAIQC9iJ/OFgsAALlbAAARAAAAAAAAAAAAAAAAAEIJAAB3b3J kL2RvY3VtZW50LnhtbFBL
AQItABQABgAIAAAAIQClXn0txwYAANcbAAAVAAAA AAAAAAAAAAAAAIcUAAB3b3JkL3RoZW1lL3Ro
ZW1lMS54bWxQSwECLQAUAAYACAAAACEAqCWl748D AADlCAAAEQAAAAAAAAAAAAAAAACBGwAAd29y
ZC9zZXR0aW5ncy54bWxQSwECLQAUAAYACAAAACEA F6AWTgIBAACsAQAAFAAAAAAAAAAAAAAAAAA/
HwAAd29yZC93ZWJTZXR0aW5ncy54bWxQSwECLQAU AAYACAAAACEAewyAibQHAAA6PQAAGgAAAAAA
AAAAAAAAAABzIAAAd29yZC9zdHlsZXNXaXRoRWZm ZWN0cy54bWxQSwECLQAUAAYACAAAACEAfadL
8m8BAACfAgAAEQAAAAAAAAAAAAAAAABfKAAAZG9j UHJvcHMvY29yZS54bWxQSwECLQAUAAYACAAA
ACEAHSeRJDMHAABJOgAADwAAAAAAAAAAAAAAAAAF KwAAd29yZC9zdHlsZXMueG1sUEsBAi0AFAAG
AAgAAAAhADEmZNnhAgAAJgwAABIAAAAAAAAAAAAA AAAAZTIAAHdvcmQvZm9udFRhYmxlLnhtbFBL
AQItABQABgAIAAAAIQAhoxce+gEAAOcDAAAQAAAA AAAAAAAAAAAAAHY1AABkb2NQcm9wcy9hcHAu
eG1sUEsFBgAAAAAMAAwACQMAAKY4AAAAAA==

--umZ7gRuyZzwopk6HSc=_56IvpoS3J76YIO--

при чем текст письма, который был до этого "удаляется".

Добавлено через 6 минут
Такая же история при отправке rar, docx и других файлов.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.12.2012, 16:26
Ответы с готовыми решениями:

Мониторинг доступности ip-адреса с отправкой отчета по эл.почте
Приветствую Вас, уважаемые коллеги и участники форума. Имеется контора, которую я обслуживаю по удаленке. У конторы два филиала в...

Трудности с отправкой писем с сайта
Трудности с отправкой писем на кириллице. На латинице проблем нет. Вот код: &lt;section id=&quot;contact-form&quot;&gt; &lt;div...

Подскажите где можно сделать PCB с отправкой по почте
Всем привет. Поделитесь где можно сделать двухструнною плату, размером 50 на 50 мм, квадратную, без вырезов, в количестве только одну-две....

11
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
18.12.2012, 17:25
Цитата Сообщение от Prostoplus Посмотреть сообщение
вместо того, что бы отправить файл как вложение,
Это как ?

Добавлено через 5 минут
Попробуйте другие классы наследники TIdAttachment
TIdAttachment is a TIdMessagePart descendant that encapsulates a MIME-encoded attachment or inline graphic. TIdAttachment, TIdAttachmentFile, TIdAttachmentMemory, and TIdText are used as collection items in the TIdMessageParts collection
0
 Аватар для Prostoplus
12 / 2 / 1
Регистрация: 21.09.2012
Сообщений: 122
18.12.2012, 20:04  [ТС]
Ну, вот что я хочу получить: (файл 1).
А программа присылает мне: (файл 2).
Миниатюры
Трудности с отправкой файла по почте   Трудности с отправкой файла по почте  
0
 Аватар для Prostoplus
12 / 2 / 1
Регистрация: 21.09.2012
Сообщений: 122
18.12.2012, 20:10  [ТС]
При попытке использовать TIdAttachment:
[bcc32 Error] Unit1.cpp(67): E2352 Cannot create instance of abstract class 'TIdAttachment'
Full parser context
Unit1.cpp(38): parsing: void _fastcall TForm1::Button1Click(TObject *)
[bcc32 Error] Unit1.cpp(67): E2353 Class 'TIdAttachment' is abstract because of '_fastcall TIdAttachment::OpenLoadStream() = 0'
Full parser context
Unit1.cpp(38): parsing: void _fastcall TForm1::Button1Click(TObject *)
Пр использовании TIdAttachmentMemory:
[bcc32 Error] Unit1.cpp(67): E2303 Type name expected
Full parser context
Unit1.cpp(38): parsing: void _fastcall TForm1::Button1Click(TObject *)
[bcc32 Error] Unit1.cpp(67): E2379 Statement missing ;
Full parser context
Unit1.cpp(38): parsing: void _fastcall TForm1::Button1Click(TObject *)
TIdText - то же самое.
0
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
18.12.2012, 20:44
Режим MiMe выставили в компоненте ?
1
 Аватар для Prostoplus
12 / 2 / 1
Регистрация: 21.09.2012
Сообщений: 122
18.12.2012, 20:45  [ТС]
Avazart, вот, пока делаю по этому примеру (только что нашел).
0
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
18.12.2012, 20:49
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//****Вложение****
TIdAttachmentFile *attachment = new TIdAttachmentFile(IdMessage->MessageParts, att);
 
attachment->ContentTransfer="base64";
attachment->ContentDisposition = "attachment";
attachment->ContentType="application/octet-stream;";
attachment->FileName="=?windows-1251?B?"+Base64Encode(ExtractFileName(att))+"?=";;
 
TIdText *TextPart = new TIdText(IdMessage->MessageParts, NULL);
TextPart->ContentType="text/plain";
TextPart->ContentTransfer="base64";
TextPart->CharSet="windows-1251";
 
TextPart->Body->Add(body);
TextPart->ParentPart=-1;
Ну собственно да..
Но только под вашу задачу надо смотреть
0
 Аватар для Prostoplus
12 / 2 / 1
Регистрация: 21.09.2012
Сообщений: 122
18.12.2012, 20:50  [ТС]
Avazart, в IdMessage выставил AttachmentEncoding на MiMe (было UUE).
Ничего не изменилось.
0
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
18.12.2012, 20:52
C++
1
2
IdMessage->ContentType="multipart/mixed";
IdMessage->Encoding=meMIME;
2
 Аватар для Prostoplus
12 / 2 / 1
Регистрация: 21.09.2012
Сообщений: 122
18.12.2012, 20:53  [ТС]
В примере с хабра ругается на
C++
1
CryptBinaryToString((unsigned char*)s.c_str(), s.Length(), CRYPT_STRING_BASE64, r, &sz);
.
Вот вся ф-я:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
AnsiString Base64Encode(AnsiString s)
{
DWORD sz;
AnsiString res;
CryptBinaryToString((unsigned char*)s.c_str(), s.Length(), CRYPT_STRING_BASE64, NULL, &sz);
char *r;
r = (char*)GlobalAlloc(GPTR, sz);
CryptBinaryToString((unsigned char*)s.c_str(), s.Length(), CRYPT_STRING_BASE64, r, &sz);
res = AnsiString( r );
GlobalFree( r );
res = res.Delete(sz-1, 2);
return res;
}
Ошибка:
[bcc32 Error] Unit1.cpp(46): E2034 Cannot convert 'char *' to 'wchar_t *'
Full parser context
Unit1.cpp(40): parsing: AnsiString Base64Encode(AnsiString)
[bcc32 Error] Unit1.cpp(46): E2342 Type mismatch in parameter 'pszString' (wanted 'wchar_t *', got 'char *')
Full parser context
Unit1.cpp(40): parsing: AnsiString Base64Encode(AnsiString)
Не пойму куда надо L влепить..
0
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
18.12.2012, 20:55
Ну собственно для этого компоненты есть в Indy для конвертирования base64
0
 Аватар для Prostoplus
12 / 2 / 1
Регистрация: 21.09.2012
Сообщений: 122
18.12.2012, 21:02  [ТС]
Цитата Сообщение от Avazart Посмотреть сообщение
C++
1
2
IdMessage->ContentType="multipart/mixed";
IdMessage->Encoding=meMIME;
ПОМОГЛО! Огромное спасибо!

Добавлено через 6 минут
Код программы для отправки электронной почты с вложением. (Использовалась RAD Studio XE3)
C++
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "converter.cpp"
#include "Unit1.h"
#include "Unit2.h"
#include "Unit3.h"
//---------------------------------------------------------------------------
//#pragma package(smart_init)
#pragma link "crypt32.lib"
#include <IdAttachmentFile.hpp>
#include <IdText.hpp> // чтобы работал TIdText
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
}
//---------------------------------------------------------------------------
UnicodeString __fastcall WinToWin1251Q(UnicodeString Str)
{
    UnicodeString strTo;
    strTo.sprintf(L"=?windows-1251?Q?");
    AnsiString sss = Str;
    for(int i=1; i<=sss.Length(); i++)
    {
        byte a = sss[i];
        if (a == ' ') a = '_';
        strTo.cat_printf((a<128) ? L"%c" : L"=%.2X", a);
    }
    strTo.cat_printf(L"?=");
    return strTo;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
    IdSMTP1->Host = Form2->Server->Text;//адрес СМТП сервака
    IdSMTP1->Username = Login->Text;            //Логин
    IdSMTP1->Password = Password->Text;//Шесть звёздочек :)))
    IdSMTP1->Port = StrToInt(Form2->Port->Text);/*465/*2525*/;// стандартный порт (587работает, 465для яндекса, 2525)
    //IdSMTP1->AuthenticationType = atLogin;//с авторизацией  !!!
try
{
    if (IdSMTP1->Connected()) IdSMTP1->Disconnect();
    IdSMTP1->Authenticate();
    {
        IdMessage1->ContentType = "text/plain; charset=windows-1251";
        IdMessage1->CharSet = "Windows-1251";
        IdMessage1->ContentTransferEncoding = "8BITMIME";
 
        IdMessage1->Body->Assign(Text->Lines); //тут мы берем текст из Memo
        IdMessage1->From->Text = Mailer->Text;//от кого письмо (если сервак не проверяет, можно левый адрес)
        //!!!!IdMessage1->Subject  = WinToWin1251Q("Распутинка"); //Заголовок письма
        IdMessage1->ExtraHeaders->Add("Subject:"+WinToWin1251Q(Topic->Text) ); //Работатет!"
        IdMessage1->Recipients->EMailAddresses = Recipient->Text;//Адрес получателя
        IdMessage1->ContentType="multipart/mixed";
        IdMessage1->Encoding=meMIME;
        //  IdMessage1->Priority = TIdMessagePriority(mpHighest);// приоритет письма... если разремить - будет высоким :)
        if(Copy_CheckBox->Checked)
        IdMessage1->CCList->EMailAddresses = Copy_adr->Text;//Копия письма (если надо)
 
        if(CB->Checked)  //вложение
        {
            if(OD->FileName != "file.txt")
            {
                new TIdAttachmentFile (IdMessage1->MessageParts,OD->FileName);
            }
        }
 
        try
        {
          if (IdSMTP1->Connected()) IdSMTP1->Disconnect();
              IdSMTP1->Connect();
              IdSMTP1->Send(IdMessage1);
              ShowMessage("Письмо успешно отправлено!");
        }catch (Exception &exception)
            {
             IdSMTP1->Disconnect();
             MessageDlg("Connect fail!", mtError, TMsgDlgButtons() << mbYes, 0);
             Abort;
            }
    }
}  catch (Exception &exception)
          {
           Application->ShowException(&exception);
           IdSMTP1->Disconnect();
          }
}
//---------------------------------------------------------------------------
void __fastcall TForm1::LoginClick(TObject *Sender)
{
    Login->Clear();
    ActivateKeyboardLayout(LoadKeyboardLayout(L"00000409", 0), 0);//АНГЛИЙСКИЙ
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::PasswordClick(TObject *Sender)
{
   Password->Clear();
   ActivateKeyboardLayout(LoadKeyboardLayout(L"00000409", 0), 0);//АНГЛИЙСКИЙ
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::ServerClick(TObject *Sender)
{
    ActivateKeyboardLayout(LoadKeyboardLayout(L"00000409", 0), 0);//АНГЛИЙСКИЙ
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::RecipientClick(TObject *Sender)
{
    Recipient->Clear();
    ActivateKeyboardLayout(LoadKeyboardLayout(L"00000409", 0), 0);//АНГЛИЙСКИЙ
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::MailerClick(TObject *Sender)
{
    Mailer->Clear();
    ActivateKeyboardLayout(LoadKeyboardLayout(L"00000409", 0), 0);//АНГЛИЙСКИЙ
    Mailer->Text = Login->Text;
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::TextClick(TObject *Sender)
{
    ActivateKeyboardLayout(LoadKeyboardLayout(L"00000419", 0), 0);//РУССКИЙ
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::TopicClick(TObject *Sender)
{
    ActivateKeyboardLayout(LoadKeyboardLayout(L"00000419", 0), 0);//РУССКИЙ
}
//---------------------------------------------------------------------------
 
 
void __fastcall TForm1::N4Click(TObject *Sender)
{
    ShowMessage("Реализовать функцию не удалось!");
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::N3Click(TObject *Sender)
{
    Form2->Show();
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::N2Click(TObject *Sender)
{
    Form3->Show();
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::ESTsettings1Click(TObject *Sender)//для тестирования программы
{
    Login->Text = "почта???";
    Password->Text = "пароль*******";
    Mailer->Text = "почта?????";
    Recipient->Text = "????почта";
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Обзор_клик(TObject *Sender)
{
    if(CB->Checked)
    {
        OD->FileName = "file.txt";
        if(OD->Execute())
        {
            ShowMessage("Файл прекриплен!");
        }
    }
}//---------------------------------------------------------------------------
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.12.2012, 21:02
Помогаю со студенческими работами здесь

Android: трудности с отправкой запроса по url и обработкой в виде xml
URL url = new URL(&quot;https://maps.googleapis.com/maps/api/geocode/xml?address=москва&quot;); DocumentBuilderFactory dbf =...

Fpdf форма с отправкой pdf файла письмом и открытием файла
Помогите, пожалуйста. Уже неделю мучаюсь. Есть форма, которую заполняет пользователь. Данные загружаются в pdf и отправляются мне на почту....

Связать progressbar c отправкой файла
Файл отправляется с использованием стандартного инпута $_FILES. Как процесс загрузки связать например с &lt;progress&gt; или другим...

Форма обратной связи с отправкой файла
Может это конечно глупый вопрос но я не смог найти расширение которое позволило бы мне создать форму для отправки пользователем файлов....

Проверка наличия файла перед отправкой
Здравствуйте, отправляю все файлы с папки &quot;А&quot; в папку &quot;В&quot;, но может быть такое что в папке &quot;В&quot; уже есть файлы с папки...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru