« [本] 買った本 | トップページ | [Ruby] Rails »

2006年7月16日 (日)

[Ruby] Win32OLE

試しに、Visual C# 2005 Express Edition で、似たようなプログラムをでっち上げる。

using System;
using System.Collections.Generic;
using System.Text;
namespace Project1
{
    public class Class1
    {
        public Object EmptyVariant()
        {
            return null;
        }
        public Object EmptyArray()
        {
            // Object [] test  = null;
            Object[] test = new Object[0];
            return test;
        }
        public void RaiseError()
        {
            System.Windows.Forms.MessageBox.Show("About to raise error...");
            throw new Exception();
        }
    }
}

それから、[ruby-talk:201524]のような Ruby のスクリプトを用意して実行。

require 'win32ole'
def problems
  test = WIN32OLE.new("Project1.Class1")
  begin
    test.RaiseError
  end
rescue
  p test.emptyvariant()
  p test.emptyarray()
end
problems

再現できない。falseは返ってこないですよ。VB6は持ってないんだよなあ。それはそうと、このスクリプトはSyntax Errorにはならないのか。

|

« [本] 買った本 | トップページ | [Ruby] Rails »

コメント

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: [Ruby] Win32OLE:

« [本] 買った本 | トップページ | [Ruby] Rails »