Hey, mon programme Qt C++ a une partie où il doit envoyer les 128 premiers caractères de la sortie d'une commande bash à une adresse e-mail. La sortie du téléscripteur est capturé dans une zone de texte dans mon IUG appelé textEdit_displayOutput et mis dans mon message que je construit à l'aide du message Builder (l'objet m_vmMessage) Voici l'extrait de code correspondant:Texte tronqué lors de la construction d'emails avec vmime
m_vmMessage.getTextPart()->setCharset(vmime::charsets::US_ASCII);
m_vmMessage.getTextPart()->setText(vmime::create <vmime::stringContentHandler> (ui->textEdit_displayOutput->toPlainText().toStdString()));
vmime::ref <vmime::message> msg = m_vmMessage.construct();
vmime::utility::outputStreamAdapter out(std::cout);
msg->generate(out);
bash Giving « ls/» et un saut de ligne fait vmime donnent une sortie borne comme ceci:
ls /=0Abin etc=09 initrd.img.old mnt=09 sbin=09 tmp=09 vmlinuz.o=
ld=0Aboot farts=09 lib=09=09 opt=09 selinux usr=0Acdrom home=09 =
lost+found=09 proc srv=09 var=0Adev initrd.img media=09 root =
considérant qu'il devrait ressembler à ceci:
ls/
bin etc initrd.img.old mnt sbin tmp vmlinuz.old
boot farts lib opt selinux usr
cdrom home lost+found proc srv var
dev initrd.img media root sys vmlinuz
18:22>
sortie semble être truncat ed autour de 'root', rien après il est affiché.
Comment puis-je coder et assembler correctement l'e-mail? Est-ce que vmime l'affiche simplement comme ça et le contenu de l'email est complet et correctement formaté?
Merci!
Ok, donc l'information actuelle dans l'email va bien? Non seulement cela, mais il ne donne pas non plus toute la sortie de 'ls' (Notez qu'il est tronqué à 'root') –
Que voyez-vous sur la réception de l'e-mail? Un client de messagerie décent ne devrait pas vous montrer la pièce jointe codée MIME brut, je pense. En outre, la chose de troncature est probablement un problème distinct. Y a-t-il un flux de sortie tamponné que vous ne rincez pas, ou ...? –