RUBY使用WIN32OLE与windows应用程序交互

Win32ole为标准Ruby发行版的一部分。Win32ole是访问Windows自动化的接口,可以让RubyWindows应用进行交互。具体说来Win32ole可以操作Word,Excel,IE,Outlook等。


1.创建一个Word文件

 

require 'win32ole'    
word = WIN32OLE.new('Word.Application')     
word.visible=true  #是否打开文件  
word.Documents.Add()     
for i in(0..100)     
  word.Selection.Font.Size=12     
  word.Selection.Font.ColorIndex = 2     
  word.Selection.TypeText("Word with Ruby \n")     
end    
word.DefaultSaveFormat     
word.Documents.close()   

 

 

2.调用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\one.txt', 1)  
message.Send  
 

 

3.创建一个Excel文件

 

require 'win32ole'  
excel = WIN32OLE.new('Excel.Application')  
book = excel.workbooks.add  
sheets = book.worksheets(1)  
cells = sheets.cells("A1:A5")  
cells.each do |cell|  
  cell.value = 10  
end  

 

 

excel = WIN32OLE.new("Excel.Application")            
excel.Visible = true  #是否打开文件  
excel.WorkBooks.Open("d:\\really.xls")   #打开excel  
worksheet = excel.ActiveWorkbook.WorkSheets(1)     
# Output the sheet count of the current work book.  
rows = worksheet.UsedRange.Rows  #得到excel文件的行数  
worksheet.Range('A1:D1').value = ['North','South','East','West'] #往excel指定区域写入数据  
worksheet.Range('A2')['value'] = "really"  
worksheet.Range('B2')['value'] = "notreally"  
worksheet.Range('C2')['value'] = "javaeye"  
worksheet.Range('D2')['value'] = "notreally.javaeye.com"  
excel.ActiveWorkbook.WorkSheets.add({'count'=>1, 'after'=>worksheet})  
#添加一个excel工作区  
excel.ActiveWorkbook.Close  #关闭工作区  
excel.Quit() 
 

 

4.创建一个ie浏览器的实例

 

require "win32ole" #包含库  
ie = WIN32OLE.new('InternetExplorer.Application')  
ie.visible = true #这个时候就可以看到一个ie的界面出来了  
ie.navigate('http://www.ask123.net') #转到这个页面  
 

 

参考:http://www.ruby-doc.org/stdlib/libdoc/win32ole/rdoc/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值