- []
- [以前のリビジョン]
Win32OLEで遊んでみた
内容について
まず最初に、自分自身のメモも兼ねてます。記事を鵜呑みにしないこと。
Win32OLEとは
Windowsを通して、InternetExplorerとかWordとかExcelを操作することができるライブラリです。吉里吉里/KAGのSDKをインストール(圧縮ファイルを展開)したフォルダの、/kirikiri2/plugin/win32ole.dllがソレです。
使い方は(trac)/kirikiri2/src/plugins/win32/win32ole/manual.tjsに書かれています。
Win32OLEについてもっと詳しいことについては、Rubyist Magazine - Win32OLE 活用法などをご覧ください。
WIN32OLEオブジェクトを作ってみる
以下、アーカイブを指定せずに吉里吉里を実行し、コンソール上で操作。
// コンソール上で変数を作る場合、globalのタイプが面倒なので、辞書tfを作る
15:18:56 コンソール : global.tf = new Dictionary() = (object)(object 0x00FBA274:0x00FBA274)
15:19:15 コンソール : Plugins.link("win32ole.dll") = (void)
15:19:47 コンソール : tf.ie = new WIN32OLE("InternetExplorer.Application") = (object)(object 0x0100340C:0x0100340C)
// http://kikyou.info/ に移動
15:20:23 コンソール : tf.ie.navigate("http://kikyou.info/") = (void)
// HTML要素のタグを探して、その1番目のタグとその中身
15:21:22 コンソール : tf.ie.document.all.tags("HTML")[0].outerHTML = (string)"<HTML xml:lang=\"ja\" xmlns=\"http://www.w3.org/1999/xhtml\"><HEAD><TITLE>kikyou.info</TITLE>\r\n<META http-equiv=Content-Type content=\"text/html; charset=utf-8\">\r\n<META http-equiv=Content-Script-Type content=text/javascript>\r\n<META http-equiv=Content-Style-Type content=text/css>\r\n<META content=W.Dee name=Author><LINK rev=Made href=\"mailto:dee@kikyou.info\"><LINK title=\"kikyou.info トップ\" href=\"http://kikyou.info/\" rel=Start><LINK title=\"kikyou.info 標準スタイルシート(トップページ用)\" href=\"./site...
15:22:08 コンソール : tf.lines = new Array() = (object)(object 0x0101ADF0:0x0101ADF0)
15:22:28 コンソール : tf.lines[0] = tf.ie.document.all.tags("HTML")[0].outerHTML = (string)"<HTML xml:lang=\"ja\" xmlns=\"http://www.w3.org/1999/xhtml\"><HEAD><TITLE>kikyou.info</TITLE>\r\n<META http-equiv=Content-Type content=\"text/html; charset=utf-8\">\r\n<META http-equiv=Content-Script-Type content=text/javascript>\r\n<META http-equiv=Content-Style-Type content=text/css>\r\n<META content=W.Dee name=Author><LINK rev=Made href=\"mailto:dee@kikyou.info\"><LINK title=\"kikyou.info トップ\" href=\"http://kikyou.info/\" rel=Start><LINK title=\"kikyou.info 標準スタイルシート(トップページ用)\" href=\"./site...
// kikyou.html として保存
15:22:58 コンソール : tf.lines.save("kikyou.html") = (object)(object 0x0101ADF0:0x0101ADF0)
krkr/win32ole.txt · 最終更新: 2008/05/12 16:53 by tohka

