Outlook Redemption:如何添加 byte[] 数组作为附件

Outlook Redemption: How to add byte[] array as attachment

我正在接收字节数组形式的文件,需要通过 Outlook/Redemption.

将这些文件作为附件发送
safeMail.Attachments.Add(data, OlAttachmentType.olByValue, DisplayName:attachment.FileName);

错误结果:

{"Could not convert variant of type (OleStr) into type (Double)"}

我假设是因为 Add() 方法需要一个变体数组?如何将字节数组转换为 Add() 方法可以接受的内容?

使用 SafeMailItem 对象可能不是最佳选择,因为您仍然需要设置附件文件名。 RDO 系列对象将是更好的选择。

大致情况:

  dim data(3)
  data(0) = "t"
  data(1) = "e"
  data(2) = "s"
  data(3) = "t"
  set Session = CreateObject("Redemption.RDOSession")
  Session.MAPIOBJECT = Application.Session.MAPIOBJECT
  set Msg = Session.GetDefaultFolder(olFolderDrafts).Items.Add
  Msg.Subject = "attach as array"
  set attach = Msg.Attachments.Add(data)
  attach.FileName = "test.txt"
  attach.DisplayName = "test.txt"
  Msg.Save