यह बिल्कुल एक नया विषय नहीं है, लेकिन जब मैं इसे करने की जरूरत, मैं "यह मेरे लिए काम क्यों नहीं होगा" का एक बहुत कुछ पाया और बहुत अधिक नहीं सीधा जवाब. मुझे आशा है कि किसी को यह उपयोगी पाता है.
कोड की निम्न बिट यह मेरे अपने जीमेल खाते का उपयोग कर एक ईमेल भेज देंगे, अनुलग्नकों सहित:
का उपयोग कर System.Net.Mail; का उपयोग कर System.Net; NetworkCredential loginInfo = नई NetworkCredential("[मेरी जीमेल ID]", "[मेरे Gmail पासवर्ड]"); MailMessage msg = नई MailMessage(); msg.से = नई MailAddress("[मी Gmail Id]@gmail.com"); msg.To.Add(नई MailAddress("paul.galvin@arcovis.com")); msg.विषय = "परीक्षण infopath देव विषय"; msg.शरीर = "<html><शरीर><मजबूत>एक मजबूत संदेश।</मजबूत></शरीर></html>"; msg.IsBodyHtml = सच है; foreach (स्ट्रिंग aFile में NIPFD.GetAttachmentNamesAndLocations()) { msg.Attachments.Add(नई अनुलग्नक(aFile)); } // अनुलग्नकों को जोड़ने. SmtpClient क्लाइंट = नई SmtpClient("smtp.gmail.com"); क्लाइंट।EnableSsl = सच है; क्लाइंट।UseDefaultCredentials = झूठी; क्लाइंट।साख = loginInfo; क्लाइंट।पोर्ट = 587; क्लाइंट।EnableSsl = सच है; क्लाइंट।भेजें(msg); |
कुछ महत्वपूर्ण बिट्स कि मुझे धीमा नीचे यातायात और अन्य टिप्पणियों / नोट्स:
- पहली पंक्ति है कि loginInfo ऑब्जेक्ट बनाता है ID के छीन लिया gmail का उपयोग करने के लिए की जरूरत है "@gmail.com”. तो, अगर मेरे जीमेल ईमेल पता है "sharepoint@gmail.com"और मेरे कूटशब्द"xyzzy"फिर रेखा की तरह लग रही होगी है:
NetworkCredential loginInfo = नई NetworkCredential("sharepoint", "xyzzy");
- मेरे जीमेल खाते SSL का उपयोग करने के लिए सेट है और कि कोई समस्या नहीं थी.
- वहाँ वहाँ से बाहर का उपयोग करने के लिए किस पोर्ट पर कुछ परस्पर विरोधी जानकारी है. मैं पोर्ट का उपयोग किया 587 और यह मेरे लिए ठीक काम किया.
- मेरे मामले में, मैं भी अनुलग्नक भेजने के लिए की जरूरत है. एक तरीका है कि जहाँ मेरे अनुलग्नक हैं जानता है कि NIPFD वस्तु है. यह एक पूरी तरह से पथ लौट रहा है (जैसे. "ग:\tempattachment1.jpg". मेरी परीक्षा में, मैं दो संलग्नक था और वे दोनों ठीक काम किया.
मैं दृश्य स्टूडियो उपयोग किया 2008 इस कोड लिखने के लिए.
</अंत>
मेरे ब्लॉग के लिए सदस्यता लें.
मेरे चहचहाना पर का पालन करें http://www.twitter.com/pagalvin
स्वच्छ और सरल…
बांटने के लिए धन्यवाद.
PowerShell टीम ब्लॉग हाल ही में एक ऐसी ही पोस्ट है कि मैं एक सर्वर व्यवस्थापक के रूप में अमूल्य पाया था. दृश्य स्टूडियो महान है, लेकिन मेरे साथियों में से कई डेवलपर्स नहीं कर रहे हैं और एक लाइसेंस खरीदा नहीं है. PowerShell आदेश पंक्ति की तरह ज्यादा लगता है और उन्हें करने के लिए और अधिक सुलभ है. बस वहाँ से बाहर किसी व्यवस्थापक के लिए एक सुझाव.
सबसे अच्छा,
जेफ (www.spjeff.com / @spjeff)
स्वचालित ईमेल भेजें-MailMessage साथ भेजने
http://blogs.msdn.com/powershell/archive/2009/10/30/sending-automated-emails-with-send-mailmessage-convertto-html-and-the-powershellpack-s-taskscheduler-module.aspx