Question

J'ai une application Web développée avec ASP.net et C# qui s'exécute sur l'intranet de mon entreprise.Étant donné que tous les utilisateurs de cette application utilisent tous Microsoft Outlook sans exception, j'aimerais que l'application ouvre un message Outlook côté client. Je comprends qu'Office est conçu pour être exécuté sur le bureau et non à partir d'un serveur, mais je n'ai aucun problème à créer un document Word ou Excel côté client.

J'ai du code qui instancie l'objet Outlook à l'aide de l'espace de noms Microsoft.Office.Interop.Outlook et d'Outlook installés sur le serveur.Lorsque j'essaie d'exécuter le code à partir du serveur, j'obtiens un message d'erreur source DCOM qui indique "Les paramètres d'autorisation de Default Machine n'accordent pas l'autorisation d'activation locale pour l'application COM Server avec CLSID {000c101c-0000-0000-C000-0000000046 } Pour l'utilisateur, cette autorisation de sécurité peut être modifiée à l'aide de l'outil d'administration des services des composants. " J'ai modifié les autorisations à l'aide de l'outil de services des composants, mais je reçois toujours cette même erreur.

Existe-t-il un moyen de surmonter ce problème ou s'agit-il d'un exercice infructueux car Outlook ne peut pas être ouvert côté client à partir du code côté serveur ?

Mailto ne fonctionnera pas en raison de la longueur extrême que peuvent atteindre les e-mails.De plus, l'utilisateur qui l'envoie doit ajouter du plaisir au texte pour les destinataires.

Était-ce utile?

La solution

Vous ne pouvez pas ouvrir quelque chose sur le client à partir du code côté serveur.Vous devrez utiliser un script sur la page pour faire ce que vous voulez (ou quelque chose d'autre côté client comme ActiveX ou .NET intégré ou quelque chose du genre)

Voici un exemple de Javascript qui appelle un Outlook MailItem à partir d'une page Web.Cela pourrait facilement être injecté dans la page à partir de votre code côté serveur afin qu'il s'exécute sur le client.

http://www.codeproject.com/KB/aspnet/EmailUsingJavascript.aspx

Autres conseils

(indice:formatage dans votre question)

Je ne comprends pas ce qui ne va pas avec un lien mailto ou une page de type formmail.

Si tout le monde dans l'entreprise utilise Outlook, le simple fait d'utiliser un lien "mailto" standard devrait toujours ouvrir Outlook.On dirait que vous faites trop d'ingénierie.

Voulez-vous ouvrir un e-mail existant ou en créer un nouveau ?

Peut-être que j'ai mal compris votre question, mais vous pouvez fournir un lien comme

mailto:recipient@email.tld?subject=This%20is%20the%20subject&body=Bonjour%20là !

Lorsque l'utilisateur clique sur ce lien, un nouveau courrier électronique Outlook sera ouvert et le destinataire est destinataire@email-tld, le sujet est "Voici le sujet" et le corps est "Bonjour !".Tous ces champs sont déjà remplis à partir du lien.

Je vais juste jeter ça là-bas parce que cela a été demandé.

Mailto présente de nombreux inconvénients ;principalement la taille.Étant donné que l'expéditeur doit effectuer beaucoup de formatage sur le texte de l'e-mail, le code HTML généré peut occuper beaucoup d'espace et échoue lors de l'utilisation de mailto.

merci pour la suggestion cependant.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top