HP Unix 发送邮件的问题
来源:互联网 发布:崩坏学园3初始号淘宝 编辑:程序博客网 时间:2024/05/16 13:07
最近要写一段服务器端发送邮件的代码,由于服务器有可能是Linux也有可能是HP Unix。一开始打算直接调用mail命令发送,结果在HP Unix上编译出错,后来发现mail的选项在Linux和HP Unix是不同的。 所以必须要考虑到平台的可移植性。要发送的邮件包括附件,cc, bcc列表,一开始我以为这没什么可难的,不就是跨平台吗? 预定义宏就解决了,于是#ifdef HPUNIX....就出来了,这回到时编译没问题了,可是在HP Unix上用mail命令没办法cc啊, 赶快google,原来HP Unix的mail命令确实不支持类似-c -b的选项。对HP Unix的mail命令实在是无语了。有些人给出建议说不就是cc吗,cc和收件人也没什么区别,就直接将cc列表直接放在收件人后面,这样也能达到发送到多个人的目的。说的是没错,拿来一试,用outlook一看,邮件头的cc列表是空的,想要cc的邮件地址都到收件人后面去了。这原本也没什么,可苛刻的老大坚决不同意了。没办法,我打算在HP Unix中放弃使用mail命令了。最后我选择了sendmail来发送邮件,并采用下面的这种方式发送邮件,也避免了跨平台的问题。
const std::string MAIL="/usr/sbin/sendmail";
std::string mailstr = "";
std::string subject = "XXX"
std::string cclist = "xxx,xxx";
std::string bcclist = "xxx,xxx";
std::string from = "xxxsss";
mailstr += "(cat <<OUTPUT; cat " + localpath + "/" + filename + ")";
mailstr += " | " + MAIL + " -t "
if (!from.empty())
mailstr += "/nFrom: " + from;
if (!subject.empty())
mailstr += "/nSubject: " + subject;
if (!cclist.empty())
mailstr += "/nCc: " + cclist;
if (!bcclist.empty())
mailstr += "/nBcc: " + bcclist;
mailstr += "/nOUTPUT";
system(mailstr.c_str());
- HP Unix 发送邮件的问题
- 如何设定HP-Unix服务器的邮件发送
- 自动发送邮件的问题
- 关于HP-Unix的视频
- HP-UNIX SAMBA 的安装
- 关于邮件发送的乱码问题
- 发送邮件中遇到的问题
- .NET发送邮件时注意的问题~~
- ASP利用Jmail发送邮件的问题
- TD无法发送邮件问题的解决
- WSS 3.0 发送邮件的问题
- UC和DZ的邮件发送问题
- server2008上发送邮件的问题
- java发送邮件遇到的各种问题
- django发送邮件send_mail的问题
- django 发送邮件的两个问题
- 发送邮件遇到的问题以及解决办法
- 关于JDK8发送邮件失败的问题
- sed参数的用法
- 一位软件工程师的6年总结
- JSP中的编码设置
- JS控制的几种页面跳转方式和传值
- dbutils例子收藏
- HP Unix 发送邮件的问题
- 商丘城市信用社王宗建:平衡业务需求与IT现状
- Ovum:2009年全球IT行业面临八大挑战
- 请大家多多赐教
- 汉字从数据库中的读写问题
- 最近在分析代码中的一些发现,以前没有注意到。
- [转]一些关于linux下编译C++程序的东西
- java连mysql 小例子
- CString ,BSTR ,LPCTSTR之间关系和区别