#language = "VBScript"
#title="自动发邮件备份"
#tooltip = "自动把文本内容备份到指定邮箱中"


'
'文件名:自动发邮件备份.vbee
'版本:0.1
'发布日期:2011年3月6日
'作者:宣华华,http://www.cnblogs.com/xuanhuahua/
'说明:这是一个Emeditor的VBScript宏脚本,可自动向指定的邮箱
'      发送当前正在编辑的文本文件,以进行备份
'
'
'注意事项:!!!!!必须先下载并安装“JMail 4.5”组件,请赴华军软件园等处搜取,只有606K
'          建议安装到Emeditor下,新建一个JMail文件夹,成功安装后即可调用
'
'使用方法:1、将本脚本保存在Emeditor的Plugins\@bin文件夹内
'          2、!!!!!用Emeditor打开脚本,根据脚本内的注释,修改相应内容,进行设置后保存
'          3、在Emeditor中打开“宏”菜单,找到并选择该宏脚本,运行即可
'          4、运行之前或之后,都可打开“查看”菜单,选择“输出”,以查看运行记录。
'
'使用提示:1、可将该脚本设置为工具栏按钮、设置快捷键,以方便调用(具体参考Emeditor文档)
'          2、可设置该脚本在进行保存文件等动作时自动运行(不推荐)
'          3、一些博客可以设置邮件发博客,也可以申请一个不公开的博客,作为备份之用
'
'已知问题:由于Emeditor竟未直接向宏脚本提供当前文档的全文,只能先选择再获得脚本,这导致
'          在备份操作之后,随便任按一键,可能误删除所有内容,尽管可撤销以恢复,还是不爽
'

On Error Resume Next

Set doc = editor.ActiveDocument
Set sel=doc.Selection

docName=doc.Name

curX=sel.GetAcitvePointX
curY=sel.GetActivePointY
sel.SelectAll
sel.Copy
txt=sel.Text

sel.SetActivePoint eePosLogical,curX,curY

Set jMM=CreateObject("JMail.Message")

With jMM
	.Logging=True
	'如遇乱码,应当修改此处,设置邮件正文编码,具体请狂搜谷歌
	.Charset="gb2312"
	'邮件主题,默认是前缀+文件名+日期时间,可根据需要自由修改,个性化你的需求
	.Subject="自动备份:"+docName+"("+FormatDateTime(Now,0)+")"
	'邮件正文内容为你的文本内容
	.Body=txt
	'
	'!!!!!----以下部分需要自行修改
	'
	'----From填写你发邮件所用的电子有奖账户
	.From="YOURSENDFROMMAIL@163.com"
	
	'----FromName可随便填写,它会出现在邮件的“发送人”信息内
	.FromName="YOURNMAME"
	
	'----此处可在引号内添加多个收件人,并用英文逗号隔开
	.Addrecipient "YOURBACKUPMAIL@163.com"
	
	'----邮箱的帐号name,密码password,此处以163为例,其他邮件服务器请参考其设置
	.Send("name:password@smtp.163.com")
	
	'
	'!!!!!-----修改结束
	'
End With

'在Emeditor的输出窗口可以查看JMail组件发送邮件的日志,方便找出问题
OutputBar.Clear
OutputBar.Writeln jMM.Log

jMM.Close()
set jMM=Nothing