Ово није нова тема, али када је требало да се уради, I found a lot of “why won’t this work for me” and not too many direct answers. I hope someone finds this useful.
Следећи део кода ће послати е-маил користећи свој Гмаил налог да то уради, укључујући прилоге:
коришћење Систем.Нет.Маил; коришћење Систем.Нет; НетворкЦредентиал логинИнфо = нови НетворкЦредентиал("[Мој Гмаил ИД]", "[Мој Гмаил лозинку]"); МаилМессаге мсг = нови МаилМессаге(); мсг.Фром = нови МаилАддресс("[М Гмаил Ид]@ Гмаил.цом"); мсг.То.Адд(нови МаилАддресс("paul.galvin@arcovis.com")); мсг.Субјецт = "Test infopath dev subject"; мсг.Боди = "<ХТМЛ><тело><јак>Снажна порука.</јак></тело></ХТМЛ>"; мсг.ИсБодиХтмл = прави; фореацх (ниска аФиле у НИПФД.ГетАттацхментНамесАндЛоцатионс()) { мсг.Аттацхментс.Адд(нови Приврженост(аФиле)); } // Додавање прилоге. СмтпЦлиент цлиент = нови СмтпЦлиент("smtp.gmail.com"); цлиент.ЕнаблеСсл = прави; цлиент.УсеДефаултЦредентиалс = лажан; цлиент.Цредентиалс = логинИнфо; цлиент.Порт = 587; цлиент.ЕнаблеСсл = прави; цлиент.Сенд(мсг); |
Неколико кључеви који ме је успорила и другим запажањима / белешке:
- Прва линија која ствара логинИнфо објекат треба да користите Гмаил ИД одузета "@ Гмаил.цом". Тако, ако је мој гмаил емаил адреса је "Схарепоинт@гмаил.цом"А моја лозинка је" киззи ", онда би линија изгледати:
НетворкЦредентиал логинИнфо = нови НетворкЦредентиал("sharepoint", "xyzzy");
- Мој Гмаил налог је подешен да користи ССЛ и да није био проблем.
- There is some conflicting information out there on what port to use. I used port 587 а је радила добро за мене.
- У мом случају, I also needed to send attachments. That NIPFD object has a method that knows where my attachments are. It’s returning a fully path (e.g. "Ц:\temp\attachment1.jpg”. In my test, Имао сам два прилога и оба су добро радили.
Сам користио Висуал Студио 2008 да напишете овај код.
</крај>
Следите ме на Туиттер на http://www.twitter.com/pagalvin
Clean and simple…
Thanks for sharing.
The PowerShell Team blog recently had a similar post that I found invaluable as a server admin. Visual Studio is great but many of my peers are not developers and don’t have a license purchased. PowerShell feels more like the command line and is more accessible to them. Just a suggestion for any admins out there.
Најбоље,
Jeff (www.spjeff.com / @spjeff)
Sending Automated emails with Send-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