2013-10-09 4 views
0

Я использую EWS с JScript (я знаю, не рекомендуется, но у меня нет выбора!) ...ExchangeWebServices крепление нагрузка

Я могу подключиться к серверу обмена, войти в системе получения сообщений, а также определить сообщение с прикрепленным файлом. Теперь я хочу сохранить это приложение локально.

у меня есть:

for (x = 0; x < myMessages.Items.Count - 1; x++) 
    { 
    thisitem = myMessages.Items.get_Item(x); 
    if (thisitem.HasAttachments) 
    { 
     attachment = thisitem.Attachments.get_Item(0) 
     attachment.Load("c:\\temp.xls"); 

Но это приводит к ошибке:

mscorlib

System.ArgumentException: Объект типа "System.String" не может быть преобразовано в тип «System.IO .Stream " ....

Я знаю, что приложение является XLS .... и это как-то связано с перегрузкой метода Load ... Но будьте что я потерян.

Помогите ?!

ответ

0

Для тех, кто нуждается, чтобы сделать что-то вроде этого, в конце концов, я нашел это работало (это Jscript в TestComplete - изменить, как вам нужно!):

if (thisitem.HasAttachments) 
    { 
    for (y = 0; y < thisitem.Attachments.Count; y++) 
    { 
     var attachment = thisitem.Attachments.get_Item(y); 
     if (attachment.get_IsInline() == false) 
     { 
     if (attachment.name.OleValue.indexOf(attachsuffix) == attachment.name.OleValue.length - attachsuffix.length) 
     { 
      attachment.Load(); 
      aqFileSystem.CreateFolder(targetfolder) 
      var filename = targetfolder + attachment.Name.OleValue 
      var fos = dotNET.System_IO.BinaryWriter.zctor(dotNET.System_IO.File.Open(filename, dotNET.System_IO.FileMode.Create)) 
      fos.write_3(attachment.content) 
      fos.Close(); 
      Log.Message("Saved: " + filename); 
     } 
     } 
    } 
    } 
Смежные вопросы