Я хотел бы сохранить вложения электронной почты, используя исходный код thunderbird. Я получил следующий код в вашем forums..but ее не работаетсохранить вложения электронной почты с использованием источника Thunderbird
alert("Messages selected: " + gFolderDisplay.selectedCount);
let enumerator = gFolderDisplay.selectedMessages;
for each (let msgHdr in fixIterator(enumerator, Ci.nsIMsgDBHdr)) {
var messageID = msgHdr.messageId;
alert("MessageID: " + messageID);
var subject = msgHdr.mime2DecodedSubject;
alert("Subject: " + subject);
MsgHdrToMimeMessage(msgHdr, null, function (aMsgHdr, aMimeMsg) {
try {
alert("Size of the message: " + aMimeMsg.size);
alert("Structure of the message:\n" + aMimeMsg.prettyString(true, undefined, true));
let attachments = aMimeMsg.allUserAttachments || aMimeMsg.allAttachments;
alert("Number of attachments: " + attachments.length);
for (let [index, att] in Iterator(attachments))
{
alert ("URL: " + att.url + " Name: " + att.name);
let ioService = Cc["@mozilla.org/network/io-service;1"].getService(Ci.nsIIOService);
let neckoURL = null;
neckoURL = ioService.newURI(att.url, null, null);
neckoURL.QueryInterface(Ci.nsIMsgMessageUrl);
let uri = neckoURL.uri;
let attInfo = new AttachmentInfo(att.contentType, att.url, att.name, uri, att.isExternal);
attInfo.save();
}
} catch (err) {
alert(err);
}
}, true, { examineEncryptedParts: true, });
}
Использования выше коды я могу в состоянии пройти через выбранный messages.but не спасая attachments.its, показывающее количество вложений. А также я хотел бы установить собственные ярлыки для выбранных писем. Как я могу это достичь? Пожалуйста, помогите мне ... Спасибо заранее
Вы должны, по крайней мере, показать, что вы сделали некоторые усилия, пытаясь понять неудачи. Где код не соответствует точно? Каковы значения «[index, att]» для каждой итерации цикла? Какие сообщения об ошибках вы получаете на консоли ошибок? –