Je travaille sur un problème à mon projet que lorsque je clique sur le bouton, un client de messagerie par défaut devrait sortir et s'il y a une pièce jointe, il devrait être automatiquement attaché à l'email par défaut client comme ça.Comment ouvrir le client de messagerie par défaut avec pièce jointe
Je l'ai déjà essayé beaucoup de méthodes comment faire cela. Tout d'abord je MAPI, mais le MAPI ne peut détecter le défaut client de messagerie, même si je l'ai déjà mis dans le Panneau de configuration, il montre cette case deux messages
Je l'ai déjà cherché sur internet à propos de ces erreurs, mais il n'y a pas de réponse précise ou claire à moi. HERE'S le code que j'ai utilisé dans MAPI.
J'ai également utilisé le protocole mail:to
pour appeler le client de messagerie par défaut qui gère le protocole susmentionné en utilisant cette ligne de codes.
Dim proc As System.Diagnostics.Process = New System.Diagnostics.Process()
Dim filename = Convert.toChar(34) & "C:\USERS\JOSHUA~1.HER\DOWNLO~1\ASDPOR~1.PDF" & Convert.toChar(34)
Debug.Writeline(filename)
Dim asd As String = String.Format("mailto:[email protected]?subject=hello&body=love my body&Attach={0}", filename)
proc.StartInfo.FileName = asd
proc.Start()
Mais encore, pas de chance. J'ai lu un thread que le mail:to
ne gère plus la pièce jointe, mais cette ligne de code a ouvert mon client de messagerie par défaut avec le corps et l'objet, mais il n'y a pas de pièce jointe. En termes de la variable filename
, j'ai déjà essayé chaque format de chemin, j'ai lu que je devrais utiliser le format de chemin 8.3. Mais ne fonctionne toujours pas.
La dernière méthode que j'ai utilisée est l'extension System.Net.MailMessage.MailMessage()
suite THIS réponse. Cela fonctionne en termes d'ouverture du client de messagerie par défaut et de pièce jointe à un mail, mais ce n'est pas modifiable et il n'y a pas de bouton d'envoi sur le client de messagerie par défaut car cette ligne de code génère un fichier .eml et l'ouvre. Je pense à l'analyse du fichier eml, mais je ne sais toujours pas comment ouvrir le client de messagerie par défaut de manière progmatique dans un nouveau formulaire de message. Voici la photo
gars vous avez une idée de comment rendre cela possible? Merci!
Avez-vous essayé l'approche MAPI en utilisant un nouveau ThreadStart avec ApartmentState.STA? C'était la seule façon de faire en sorte que cela fonctionne pour moi. –