加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 通过MS Outlook发送电子邮件并禁用警告

发布时间:2020-12-15 17:23:23 所属栏目:百科 来源:网络整理
导读:我有一个C#程序,我将每天运行(通过 Windows Scheduler).该计划是向我的团队发送每日报告. 我写了以下内容来发送电子邮件,它的工作原理.唯一的问题是Outlook显示一个消息框“程序正在尝试代表您发送电子邮件.如果这是意外的……”.有三个按钮“允许”“拒绝”
我有一个C#程序,我将每天运行(通过 Windows Scheduler).该计划是向我的团队发送每日报告.
我写了以下内容来发送电子邮件,它的工作原理.唯一的问题是Outlook显示一个消息框“程序正在尝试代表您发送电子邮件.如果这是意外的……”.有三个按钮“允许”“拒绝”“帮助”,似乎我的程序在此时停止,直到我点击允许或拒绝按钮,程序不发送电子邮件.
我知道我可以通过进入工具来改变选项 – >信托中心 – >程序化访问,但我真的不想使用它,因为该程序最终将从用户可能访问或不访问的另一台机器运行,以更改信任中心的设置.
有没有办法以编程方式禁用此警告? ..或者有另一种方式发送电子邮件而没有此警告弹出窗口

这是用于发送电子邮件的代码..它工作正常..

Application olook = new Application();
        NameSpace ns = olook.GetNamespace("MAPI");
        ns.Logon(null,null,true,true);

       _MailItem msg = (_MailItem)olook.CreateItem(OlItemType.olMailItem);

        msg.To = "xxx@xxx.com";
        msg.Subject = "test";

        msg.HTMLBody = strHTML;

        msg.Send();
        ns.Logoff();

解决方法

有几种方法可以做到这一点
你可以像@DJ KRAZE那样禁用弹出窗口

或者您可以通过smtp发送消息,如果在您的环境中可能的话
看到这个:http://msdn.microsoft.com/en-us/library/system.net.mail.smtpclient.aspx

那么你可以使用我已经使用它的“兑换库”并且没有消息,因为兑换会抑制它们(或者在它们周围工作)但是库是通过com使用的,那不是那么舒服..
虽然你必须为此付出代价:
http://www.dimastr.com/redemption/home.htm

他们的替代方案是使用托管的Exchange Web服务
http://www.microsoft.com/download/en/details.aspx?id=13480
这是非常直接和有趣的使用.你也可以通过NuGet获得.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读