イベントインターフェースを取得する
このようなイベントの インタフェース名を調べるには一種のノウハウが必要です。
イベントのインタフェース名を調べる方法について ruby-list:39137 で、arton さんが書かれた方法が非常に参考になります。簡単な方法は助田さんが作成された Simple OLE Browser や Python Object Browser を用いることでしょう。
MSDNを調べろって言われても慣れてないとなかなか正解にたどり着かないのがMSDN。オンラインだとストレスがたまりやすくてあきらめることが多いのよね。ということで、作ってみた。
require 'win32ole' tl = 'Microsoft Excel 9.0 Object Library' ole_classes = WIN32OLE_TYPE.ole_classes(tl) ole_classes.each do |c| begin methods = WIN32OLE_TYPE.new(tl, c.to_s).ole_methods methods.each do |m| p [c, m.event_interface, m] if m.event? end rescue end end
tlのところは各自環境に合わせて適当に。
追記:http://msdn.microsoft.com/library/en-us/dno2kta/html/offaut.asp
以下、実行結果
続きを読む