У меня есть NSF
, который содержит сообщение электронной почты с двумя вложениями. Одно из вложений повреждено, и, если я попытаюсь его сохранить, Notes отобразит это сообщение The attachment may be corrupted. Would you like to continue with the available data?
Если я нажму Да, Notes сохранит поврежденное вложение в указанный мной каталог. Это хорошо.
Я хотел бы сделать то же самое, используя объектную модель в C #. Если я запускаю NotesEmbeddedObject.ExtractFile()
, я получаю сообщение об исключении: Notes error: Encoded Data Checksum Mismatch - Attachment may be corrupted
. В указанный мной каталог не записано ни одной версии файла.
Я бы хотел, чтобы код записал поврежденную версию в каталог. Как я могу это сделать?
Существующий код:
//BEGIN Extract Attachment
//nItem is a NotesItem
if (nItem.type == IT_TYPE.ATTACHMENT)
{
try
{
string pAttachment = ((object[])nItem.Values)[0].ToString();
NotesDocument NDoc = NotesConnectionDatabase.AllDocuments.GetNthDocument(i);
NotesEmbeddedObject Neo = NDoc.GetAttachment(pAttachment);
NDoc.GetAttachment(pAttachment).ExtractFile(@"D:\projects\xxx\Attach\" + pAttachment);
}
catch (Exception e)
{
string eMessage = e.Message;
Console.WriteLine(eMessage);
}
}
//END Extract Attachment