Archive for 5月 24th, 2012

  1. Hello, COM(Ruby) World!

    Posted on 5月 24th, 2012 by cx20

    Ruby

    COM(Component Object Model)はマイクロソフトの提唱するプログラム部品の仕様である。
    COM を用いて開発された部品であれば言語を問わず利用することができる。
    以下は Ruby による COM クライアントの例となっている。

    ソースコード

    require 'win32ole'
     
    shell = WIN32OLE.new('Shell.Application')
    folder = shell.BrowseForFolder( 0, "Hello, COM(Ruby) World!", 0, 36 )

    実行方法

    C:¥> ruby hello.rb

    実行結果

    +----------------------------------------+
    |Browse For Folder                    [X]|
    +----------------------------------------+
    | Hello, COM(Ruby) Wolrd!                |
    |                                        |
    | +------------------------------------+ |
    | |[Windows]                           | |
    | | +[addins]                          | |
    | | +[AppCompat]                       | |
    | | +[AppPatch]                        | |
    | | +[assembly]                        | |
    | |     :                              | |
    | |     :                              | |
    | |     :                              | |
    | +------------------------------------+ |
    | [Make New Folder]    [  OK  ] [Cancel] |
    +----------------------------------------+