2011-01-07 4 views
1

J'ai une automatisation de perspectives. Je voudrais utiliser un document Word comme modèle pour le contenu du message. Disons que j'ai un texte formaté contenant des tableaux, des couleurs, des tailles, etc. Maintenant, je voudrais copier/coller ce contenu dans un objet de message Outlook.
Copier le format Word dans le message Outlook

Voici quelques exemples de code (pas de nettoyage):

String path = @"file.docx"; 
String savePath = @"file.msg"; 
Word.Application wordApp = new Word.Application(); 
Word.Document currentDoc = wordApp.Documents.Open(path); 
Word.Range range = currentDoc.Range(0, m_CurrentDoc.Characters.Count); 
String wordText = range.Text; 

oApp = new Outlook.Application(); 
Outlook.NameSpace ns = oApp.GetNamespace("MAPI"); 
ns.Logon("MailBox"); 
Outlook._MailItem oMsg = oApp.CreateItem(Outlook.OlItemType.olMailItem); 
oMsg.To = "[email protected]"; 
oMsg.Body = wordtext; 
oMsg.SaveAs(savePath); 

Utilisation d'Outlook/Word 2007, mais les fichiers de mots mayb encore en format 2000/2003 (.doc).
Visual Studio 2010 avec .net 4.0 (devrait être évident en raison du samplecode).

J'ai l'habitude d'interagir et je sais que je ne fais que copier le "texte brut". Je pense qu'il doit être fait en retreignant rtf/html du document de mot ...

Des suggestions?

+0

Pouvez-vous montrer du code que vous avez? – HABJAN

+0

ajouté à la question ... – Jaster

+0

Je n'utilise pas copier/coller au moyen de presse-papiers! – Jaster

Répondre

0

Office 2007 offre la fonctionnalité "MailEnvelope", qui peut être utilisée à mes fins.

1

La chaîne dans laquelle vous lisez le contenu ne pourra pas conserver le format. Vous devrez copier la sélection par d'autres moyens pour conserver le formatage. Une technique que vous pouvez utiliser est d'enregistrer le document au format html - qui ajoutera le mot html supplémentaire a tendance à ajouter, lire le contenu html dans une chaîne, c'est à dire cette chaîne aura les balises générées -, puis créer un Outlook mailItem et définissez le body format en html. - et définir le corps au format html que l'enregistrement du mot en HTML généré.

+0

Eh bien, l'idée est claire, mais si je sauvegarde le document Word dans un autre format (html, rtf) et que j'essaie 2 d'obtenir le formatage n'est pas formaté. Mayb vous pourriez ajouter un code de travail? – Jaster

+0

Vous souhaitez que l'ensemble du document soit correct? – kd7

+0

Préfère - je ne sais pas si elle doit inclure des "objets" - mais j'ai besoin de tout le matériel de formatage. – Jaster

Questions connexes