Win32ole为标准Ruby发行版的一部分。Win32ole是访问Windows自动化的接口,可以让Ruby和Windows应用进行交互。具体说来Win32ole可以操作Word,Excel,IE,Outlook等。
以下均为代码片段
Word
创建一个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()
Outlook
调用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
Excel
创建一个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
require 'win32ole'
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.iteye.com"
excel.ActiveWorkbook.WorkSheets.add({'count'=>1, 'after'=>worksheet})
#添加一个excel工作区
excel.ActiveWorkbook.Close #关闭工作区
excel.Quit()
IE
创建一个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/
分享到:
相关推荐
Win32OLE extension library provides an interface to OLE Automation from Ruby. Here is a sample script: require 'win32ole' application = WIN32OLE.new('Excel.Application') application.visible = TRUE...
win32ole-mapi-outlook
win32ole-mapi
名称node-win32ole-由v8引擎提供动力的异步,非阻塞win32ole绑定。 win32ole使从node.js到Excel,Word,Access,Outlook,InternetExplorer,WSH(ActiveXObject / COM)等的可访问性成为可能。 它不需要TypeLibrary...
go-ole - golang的Win32 OLE实现
NULL 博文链接:https://fuwu123.iteye.com/blog/621492
该手册对生成word文档的WIN32OLE类的接口和相关方法做了详细介绍!是辅助VB编程的手册,但是里面WIN32OLE类的示例方法还是相同的,语法可以根据自己所用的语言修改一下就可以了。压缩包里有一个『MSWORD常量定义』的...
win32::ole的官方文档,放在这里给大家看看
引言脚本语言,其目的是将 Unix shell 的易用性和编程语言( 比如 C) 的功能与可塑性结合起来。它最初只是 Unix 系统管理员的一个工具, 在工作日
ExcelBook 当将Excel与Win32ole一起使用时,它会被包裹起来,以便您轻松使用。操作环境我只在我的环境中检查它。 Windows7(64位)Excel2010安装将此行添加到您的应用程序的Gemfile中: gem 'excel_book' 然后执行:...
Win32::OLE安装模块,可以导入perl,以关键词use Win32::OLE开头,即可在perl调用相应函数来操作excel
在perl中如何操作Excel,相当有用,
去OLE 使用共享库而不是cgo为Windows COM进行绑定。 松本康弘。 安装 要试验go-ole,您可以编译并运行示例程序: go get github.com/go-ole/go-ole cd /path/to/go-ole/ go test cd /path/to/go-ole/example/...
org.eclipse.swt.SWT.class org.eclipse.swt.SWTError.class org.eclipse.swt.SWTException.class org.eclipse.swt.accessibility.ACC.class org.eclipse.swt.accessibility.Accessible.class org.eclipse.swt....
win32-ole
win7_32Bit_ole32.dll
pb 在添加ole控件时可能与其他控件冲突, 网上只有32位系统下的解决方法。这个是64位下的解决方案。可以参考别的方法。
Win7X64 下可用的Ole View 亲测,可用,内附Win7X64下使用的截图。解压即可运行。
通过Win32 API,Windows NT以及Windows 95都可以支持多线程程序设计,但是这个重要主题的信息却极稀有而不够详尽。 在《Win32多线程程序设计》这本书中,Jim Beveridge和Robert Wiener告诉你什么时机、什么地点、...
使用OLE技术为duilib和win32封装的文件拖放类,CDropTargetEx。方便做拖放效果