[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にはならないのか。
| 固定リンク
この記事へのコメントは終了しました。
コメント