2011-06-24 56 views
1

NSFには2つの添付ファイルを含む電子メールメッセージが含まれています。添付ファイルの1つが破損していて、保存しようとすると、このメッセージが表示されます。The attachment may be corrupted. Would you like to continue with the available data?Lotus Notes - プログラムで破損した添付ファイルを保存する - NotesEmbeddedObject

[はい]をクリックすると、破損した添付ファイルが指定したディレクトリに保存されます。これはいい。

私は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 

答えて

3

私は恐れていませんよ。

NotesEmbeddedObject.ExtractFileメソッドは添付ファイルの抽出を試みますが、チェックサムの不一致があり、エラーが発生するとすぐに例外がスローされます。

添付ファイルを扱う他のNotesバックエンドクラス(他人がしているかもしれません...)

関連する問題