通过win32ole我们可以操作outlook,例如平时我们所常用到的发送邮件和建立日程提醒等。这样的话,我们就可以用程序的功能而取代了实际上对outlook的操作。
1.发送邮件
#Send Email with Ruby
#Before you use ruby to send your email, please configure your outlook
require 'win32ole'
outlook = WIN32OLE('Outlook.Application')
message = outlook.CreateItem(0)
message.Subject = 'Subject line here'
message.Body = 'This is the body of your message.'
message.To = 'xiaofan2350@yahoo.com.cn'
message.Attachments.Add('c:\really。txt', 1)
message.Send
2.建立日程提醒
#Outlook Appointments with Ruby
#We can use ruby to add appointmengs to the outlook calender,then read on.
require 'win32ole'
require 'date'
class Outlook
OLFolderCalendar = 9
OLAppointmentItem = 1
OLFree = 0
OLTentative = 1
OLBusy = 2
SEC = 1
MIN = 60 * SEC
HOUR = MIN * 60
def initialize( busy_default = Outlook::OLBusy )
@ol = WIN32OLE.new( "Outlook.Application" )
@busy_default = busy_default
end
def appointment(opts)
opts[:busy_status] ||= @busy_default
ol_appt = @ol.CreateItem(OLAppointmentItem)
ol_appt.Start = opts[:start]
ol_appt.End = opts[:end]
ol_appt.Subject = opts[:subject]
ol_appt.Location = opts[:location]
ol_appt.Body = opts[:body]
ol_appt.BusyStatus = opts[:busy_status]
ol_appt.ReminderSet = opts[:set_reminder?]
ol_appt.ReminderMinutesBeforeStart = opts[:reminder_minutes]
ol_appt.Save
end
def self.add_appointment
outlook = Outlook.new
start_time = Time.local( 2008, 8, 8, 19, 0, 0 )
end_time = start_time + ( 120 * Outlook::MIN )
ol.add_appointment :start => start_time, #接受的是Timer对象
:end => end_time ,
:subject => 'Welcome to Beijing!', #主题
:location => "Beijing", #地点
:body => 'One World One Dream', #内容
:set_reminder? => true, #是否提醒
:reminder_minutes => 15 #提醒时间周期
end
end
由于在我的项目中程序字符集是UTF-8,所以发送邮件或设置提醒的时候要转换字符集(gbk)。否则的话,发送的中文是乱码。eg.
require 'iconv'
cov = Iconv.new( 'gbk', 'utf-8')
puts cov.iconv("北京奥运会!")
分享到:
相关推荐
在IT行业中,`Win32OLE`、`MAPI` 和 `Outlook` 是与Windows平台上电子邮件编程密切相关的技术。`Win32OLE`(Windows Interface for Object Linking and Embedding)是Microsoft提供的一种接口,允许Ruby等脚本语言与...
在提供的文件"outlook code.mht"和"outlook code.txt"中,可能包含具体的Python代码示例,演示了如何使用win32ole与Outlook的MAPI接口进行交互。这些代码通常会展示如何创建邮件、设置属性,以及发送邮件等操作。 ...
win32ole使从node.js到Excel,Word,Access,Outlook,InternetExplorer,WSH(ActiveXObject / COM)等的可访问性成为可能。 它不需要TypeLibrary。用法使用npm install win32ole 。 它的作用是...(版本0.1.x) ...
取已注册Win32模块和它们版本 在Delphi中播放 Flash 在Excel内查看TDataSet 备份Outlook附件 将Word文档保存为Rtf 打印 预览MS Access报表 找回Outlook文件夹列表 替换word文档中的文本 检查 Word, Excel, Access, ...
5. **Win32**:Windows API的一部分,提供了与操作系统交互的函数库,用于开发32位Windows应用程序。 6. **Dev OLE**:OLE(Object Linking and Embedding)是COM的前身,允许不同应用程序间的数据共享和嵌入对象。 ...
cubelevim是一个COM加载项,允许在Vim实例中编辑Microsoft Outlook消息(和一些其他对象)。 用Visual Basic编写,并使用Win32 OLE版本的Vim,它适用于停留在小隔间中工作的UNIX用户。
不过,可以使用第三方模块如`Win32::OLE`来直接操作Outlook对象模型,从而发送邮件。这种方式适用于在同一台运行Outlook的计算机上执行Perl脚本的情况。 在提供的压缩包文件"Perl_mail"中,可能包含了一个或多个...
#Grid (SharpGrid) 2.0是面向数据库、功能完善的ActiveX网格控件,可用于绑定(OLEDB和ICursor)、非绑定和虚拟数据模式。#Grid拥有目前主流网格控件的所有功能:快速方便地处理列表数据,强大的显示功能、使用方便...
1567.4 使用Microsoft Outlook和Exchange文件夹 1567.4.1 用Outlook导出和导入Jet 4.0表 1577.4.2 使用Exchange/Outlook向导的链接 1597.5 导入文本文件 1607.5.1 使用导入文本向导 1617.5.2 导入文本向导的高级选项...
1517.3.2 链接Excel工作表 1567.4 使用Microsoft Outlook和Exchange 文件夹 1567.4.1 用Outlook导出和导入Jet 4.0表 1577.4.2 使用Exchange/Outlook向导的链接 1597.5 导入文本文件 1607.5.1 使用导入文本向导 1617....
1567.4 使用Microsoft Outlook和Exchange文件夹 1567.4.1 用Outlook导出和导入Jet 4.0表 1577.4.2 使用Exchange/Outlook向导的链接 1597.5 导入文本文件 1607.5.1 使用导入文本向导 1617.5.2 导入文本向导的高级选项...
1567.4 使用Microsoft Outlook和Exchange文件夹 1567.4.1 用Outlook导出和导入Jet 4.0表 1577.4.2 使用Exchange/Outlook向导的链接 1597.5 导入文本文件 1607.5.1 使用导入文本向导 1617.5.2 导入文本向导的高级选项...
1517.3.2 链接Excel工作表 1567.4 使用Microsoft Outlook和Exchange 文件夹 1567.4.1 用Outlook导出和导入Jet 4.0表 1577.4.2 使用Exchange/Outlook向导的链接 1597.5 导入文本文件 1607.5.1 使用导入文本向导 1617....
1517.3.2 链接Excel工作表 1567.4 使用Microsoft Outlook和Exchange 文件夹 1567.4.1 用Outlook导出和导入Jet 4.0表 1577.4.2 使用Exchange/Outlook向导的链接 1597.5 导入文本文件 1607.5.1 使用导入文本向导 1617....
1517.3.2 链接Excel工作表 1567.4 使用Microsoft Outlook和Exchange 文件夹 1567.4.1 用Outlook导出和导入Jet 4.0表 1577.4.2 使用Exchange/Outlook向导的链接 1597.5 导入文本文件 1607.5.1 使用导入文本向导 1617....
1567.4 使用Microsoft Outlook和Exchange文件夹 1567.4.1 用Outlook导出和导入Jet 4.0表 1577.4.2 使用Exchange/Outlook向导的链接 1597.5 导入文本文件 1607.5.1 使用导入文本向导 1617.5.2 导入文本向导的高级选项...
1567.4 使用Microsoft Outlook和Exchange文件夹 1567.4.1 用Outlook导出和导入Jet 4.0表 1577.4.2 使用Exchange/Outlook向导的链接 1597.5 导入文本文件 1607.5.1 使用导入文本向导 1617.5.2 导入文本向导的高级选项...
1567.4 使用Microsoft Outlook和Exchange文件夹 1567.4.1 用Outlook导出和导入Jet 4.0表 1577.4.2 使用Exchange/Outlook向导的链接 1597.5 导入文本文件 1607.5.1 使用导入文本向导 1617.5.2 导入文本向导的高级选项...
1567.4 使用Microsoft Outlook和Exchange文件夹 1567.4.1 用Outlook导出和导入Jet 4.0表 1577.4.2 使用Exchange/Outlook向导的链接 1597.5 导入文本文件 1607.5.1 使用导入文本向导 1617.5.2 导入文本向导的高级选项...