|
0 / 0 / 0
Регистрация: 15.04.2013
Сообщений: 19
|
|||||||
SMTP клиент на QT15.04.2013, 10:48. Показов 11151. Ответов 31
Метки нет (Все метки)
Собственно пытаюсь сделать smtp клиент для отправки html письма. Письмо отправляется и кодировки нормально проходят кроме одного НО. Переодически выскакивает лаг в виде лишних пробелов посредине слова или знаков ??. Причем этот лаг смещается если менять текст
Выглядит что то типа: Просим Вас, после оплаты уведомить нас о продлен ии А в оригинале должно быть: Просим Вас, после оплаты уведомить нас о продлении Я так понимаю это что то с кодировками? Кто сталкивался с емаил рассылкой? Листинг main.cpp Листинг smtp клиента: Господа. Подскажите куда копать. Не могу сориентироваться в чем может быть проблема. PS Если кому то будет удобно взглянуть на итоговое письмо - могу выслать на email. Скрин письма:
0
|
|||||||
| 15.04.2013, 10:48 | |
|
Ответы с готовыми решениями:
31
Smtp клиент для qt SMTP клиент - отправка сообщения Отправка письма (заходим на почту). SMTP-клиент в С++ |
|
0 / 0 / 0
Регистрация: 15.04.2013
Сообщений: 19
|
||
| 17.04.2013, 14:40 [ТС] | ||
|
Спасибо за доходчивое пояснение. Пища для ума и направления движения появились. Щас будем дальше разбираться =)
0
|
||
|
0 / 0 / 0
Регистрация: 15.04.2013
Сообщений: 19
|
|||||||||||||||||||||||||||||
| 18.04.2013, 17:45 [ТС] | |||||||||||||||||||||||||||||
|
Разбираю пример из учебника, и накопилось несколько вопросов.
Делаю фукнцию по аналогии:
Добавлено через 24 минуты Кому будет удобнее код целиком: smtp.h Кликните здесь для просмотра всего текста
smtp.cpp Кликните здесь для просмотра всего текста
0
|
|||||||||||||||||||||||||||||
|
0 / 0 / 0
Регистрация: 15.04.2013
Сообщений: 19
|
|||||||||
| 19.04.2013, 10:54 [ТС] | |||||||||
|
Спасибо за пояснение Dmitriy_M =)
Что то в примере из учебника либо не договаривается либо неверно: Функция чтения данных из потока:
Почему переменная m_nNextBlockSize принимает значение 12850?
0
|
|||||||||
| 19.04.2013, 11:12 | |||||
|
0
|
|||||
|
0 / 0 / 0
Регистрация: 15.04.2013
Сообщений: 19
|
|||
| 19.04.2013, 12:02 [ТС] | |||
![]() У меня клиентское приложение. Протокол smtp. Добавлено через 9 минут Добавлено через 8 минут развер размер доступных для чтения байт, возвращаемых bytesAvailable() может быть меньше m_nNextBlockSize(которые я полагаю тоже в байтах измеряются?)
0
|
|||
| 19.04.2013, 12:26 | ||
|
Клиент/Сервер может послать несколько последовательных сообщений, и в этом случае bytesAvailable() может быть > m_nNextBlockSize.
0
|
||
|
0 / 0 / 0
Регистрация: 15.04.2013
Сообщений: 19
|
||
| 19.04.2013, 12:52 [ТС] | ||
|
0
|
||
|
0 / 0 / 0
Регистрация: 15.04.2013
Сообщений: 19
|
|||||||
| 22.04.2013, 15:26 [ТС] | |||||||
|
Что есть метод bytesAvailable() и какое значение он имеет? m_nNextBlockSize какую роль играет в этом цикле? Я так понял что эта переменная для проверки пришло ли сообщение(первое условие)? Полученно ли сообщение полностью(второе условие)? И собственно в чем моя ошибка? почему я не могу читать сообщение от сервера? Возможно ошибка в механизме сигналов?
0
|
|||||||
|
0 / 0 / 0
Регистрация: 15.04.2013
Сообщений: 19
|
|
| 24.04.2013, 10:37 [ТС] | |
|
Хьюстон, у нас проблемы.
Помогите дельным советом.
0
|
|
|
0 / 0 / 0
Регистрация: 15.04.2013
Сообщений: 19
|
|||||||||||||||||||||||||||||||||||
| 26.04.2013, 10:40 [ТС] | |||||||||||||||||||||||||||||||||||
|
С чтением разобрался стандартными методами класса socket
КОД
Собственно теперь пытаюсь правильно отправить ответ на сервер. Как говорил ранее первом посте - возникают проблемы при отправке html писем на smtp сервера(пробовал mail, yandex, google). Проблема заключается в произвольных разрывах текста. Один человек посоветовал разобраться в способе записи данных в поток(якобы проблема кроется в этом). Я решил сделать аналогично учебнику используя классы QByteArray и QDataStream(что позволяет нам хранить текст запроса серверу в виде массива байт). Редактирую функцию относительно примера учебника:
Добавлено через 18 минут Вот этот код выводит и говорит нам что данные всетаки записываются...
Собственно почему я хочу вывести QByteArray arrBlock в qDebug(). Дело в том, что программа отвечает:
В документации функция записи в сокет имеет вид:
0
|
|||||||||||||||||||||||||||||||||||
| 26.04.2013, 10:40 | |
|
Привязать отправку письма через SMTP клиент к QProgressBar Enc 28J60 telnet клиент или SMTP клиент Smtp, почтовый клиент Smtp-клиент (Shell) SMTP клиент и OpenSSL Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
|
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет:
1. Использовать системное время и дату,
2. Есть возможность вводить время и дату вручную.
3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
|
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber.
Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
|
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео:
https:/ / vkvideo. ru/ video-240781534_456239017
YouTube:
eY5-5PyI9NM
Текстовая версия
|
|
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать
Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|