J'essaie de trouver un moyen d'obtenir des pièces jointes (programaticaly), puis l'ouvrir ... quelqu'un peut me dire comment faire cela ou me diriger vers une bonne direction?obtenir/ouvrir des pièces jointes dans Outlook
0
A
Répondre
1
Il s'agit d'un script VBA (utilisé dans une macro dans Outlook) qui fait une boucle sur toutes les pièces jointes de tous les éléments sélectionnés dans le dossier actuel et les enregistre sur le disque.
Cela devrait vous aider à démarrer et je ne pense pas qu'il faille beaucoup ajouter une sorte de lancement de processus plutôt que de sauvegarder la logique.
Public Sub SaveAttachments()
'Note, this assumes you are in the a folder with e-mail messages when you run it.
'It does not have to be the inbox, simply any folder with e-mail messages
Dim Exp As Outlook.Explorer
Dim Sel As Outlook.Selection
Dim AttachmentCnt As Integer
Dim AttTotal As Integer
Dim MsgTotal As Integer
Dim outputDir As String
Dim outputFile As String
Dim fileExists As Boolean
Dim cnt As Integer
'Requires reference to Microsoft Scripting Runtime (SCRRUN.DLL)
Dim fso As FileSystemObject
Set Exp = Application.ActiveExplorer
Set Sel = Exp.Selection
Set fso = New FileSystemObject
outputDir = "C:\Path"
If outputDir = "" Then
MsgBox "You must pick an directory to save your files to. Exiting SaveAttachments.", vbCritical, "SaveAttachments"
Exit Sub
End If
Dim att As Attachment
'Loop thru each selected item in the inbox
For cnt = 1 To Sel.Count
'If the e-mail has attachments...
If Sel.Item(cnt).Attachments.Count > 0 Then
MsgTotal = MsgTotal + 1
'For each attachment on the message...
For AttachmentCnt = 1 To Sel.Item(cnt).Attachments.Count
'Get the attachment
Set att = Sel.Item(cnt).Attachments.Item(AttachmentCnt)
outputFile = att.FileName
outputFile = Format(Sel.Item(cnt).ReceivedTime, "yyyy-mm-dd_hhmmss - ") + outputFile
fileExists = fso.fileExists(outputDir + outputFile)
'Save it to disk if the file does not exist
If fileExists = False Then
att.SaveAsFile (outputDir + outputFile)
AttTotal = AttTotal + 1
End If
Set att = Nothing
Sel.Item(cnt).Close (Outlook.OlInspectorClose.olDiscard)
Next
End If
Next
'Clean up
Set Sel = Nothing
Set Exp = Nothing
Set fso = Nothing
'Let user know we are done
Dim doneMsg As String
doneMsg = "Completed saving " + Format$(AttTotal, "#,0") + " attachments in " + Format$(MsgTotal, "#,0") + " Messages."
MsgBox doneMsg, vbOKOnly, "Save Attachments"
Exit Sub
ErrorHandler:
Dim errMsg As String
errMsg = "An error has occurred. Error " + Err.Number + " " + Err.Description
Dim errResult As VbMsgBoxResult
errResult = MsgBox(errMsg, vbAbortRetryIgnore, "Error in Save Attachments")
Select Case errResult
Case vbAbort
Exit Sub
Case vbRetry
Resume
Case vbIgnore
Resume Next
End Select
End Sub
1
Look for the COM-reference of Outlook. Vous pouvez également utiliser une macro écrite en vba pour ce faire.
+0
Regardez aussi ceci: http://www.fontstuff.com/outlook/oltut01.htm –
Questions connexes
- 1. Pièces jointes Outlook et Javascript
- 2. Outlook Redemption: streaming de pièces jointes
- 3. Charger les pièces jointes noms sans pièces jointes dans C#
- 4. Outlook 2010 addins pour l'extraction automatique de pièces jointes électroniques
- 5. Composant Delphi similaire à Outlook pour afficher les pièces jointes
- 6. Extrait les pièces jointes msg de Outlook email
- 7. Quelle est la meilleure méthode VB pour transmettre des pièces jointes Outlook Outlook?
- 8. Pièces jointes s'incrustant
- 9. comment enregistrer le formulaire Outlook avec pièces jointes?
- 10. Obtenir des pièces jointes à partir d'Outlook
- 11. Ajouter des pièces jointes dans Acess VBA
- 12. Emplacement des pièces jointes dans JIRA
- 13. envoyer/recevoir des pièces jointes dans WCF
- 14. Taille des pièces jointes dans TFS 2010
- 15. Pièces jointes dans un UIWebView
- 16. Pièces jointes Ghost dans CouchDB
- 17. NSTextView Images/pièces jointes
- 18. iphone Pièces jointes XML
- 19. Indy IdSMTP et pièces jointes dans Thunderbird
- 20. éviter de supprimer des pièces jointes dans Outlook en utilisant la programmation addin
- 21. Pièces jointes en pdf
- 22. Les pièces jointes ne sont pas jointes
- 23. désérialisation plusieurs pièces jointes des données
- 24. Paperclip, before_save, et suppression des pièces jointes
- 25. Comment ouvrir la liste des pièces jointes?
- 26. iphone - empêcher l'affichage des pièces jointes
- 27. Extension du menu contextuel des pièces jointes d'Oulook 2010
- 28. envoyer plusieurs messages avec des pièces jointes
- 29. Identification des pièces jointes en résultat WebDav
- 30. PHP envoyer des pièces jointes de courrier
Vous devrez travailler avec les bibliothèques com perspectives/Interop pour .Net, vous le verrez dans ajouter des références sous com et il y a beaucoup de ressources sur le net –
J'utilise Microsoft.Office. Interop.Outlook (avec C#), mais je ne peux pas obtenir mail.Attachments.Item ... les seules options est d'ajouter ... – Wolfy
OK, mon erreur :), maintenant ça marche super ... tnx à tous – Wolfy