Pregunta

Si selecciono un mensaje de Outlook desde la Bandeja de entrada y copiarlo en el portapapeles que puede pegar como un archivo * .msg en el escritorio.

Ahora quiero poner en práctica la misma función para mi aplicación.

El objeto Clipboard contiene los siguientes elementos:

RenPrivateSourceFolder
RenPrivateMessages
RenPrivateItem
FileGroupDescriptor
FileGroupDescriptorW
FileDrop
FileNameW
FileName
FileContents
Object Descriptor
System.String
UnicodeText
Text

FileGroupDescriptor contiene una MemoryStream con el nombre de archivo (Subject.msg), pero no sé cómo crear una copia del mensaje de Outlook a partir de los datos del portapapeles, ya que ninguno de los elementos parecen contener el mensaje mismo.

alguna sugerencia?

¿Fue útil?

Solución

Este es un ejemplo: Drag and Drop de Outlook en C # . El artículo funciona con arrastrar y soltar, pero debería ser similar, si no idéntico para trabajar con el portapapeles.

Otros consejos

No estoy seguro si esto va a funcionar, pero hay que hacer algo como:

if (Clipboard.ContainsText(System.Windows.Forms.TextDataFormat.Text))
{
    IDataObject data = Clipboard.GetDataObject();
    Outlook.Application oApp = new Outlook.Application();
    Outlook.MailItem oMsg = (Outlook.MailItem)data.GetData(DataFormats.Text, true);
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top