[#43369] dRuby に CGI を渡す→script_uri が上手く取得出来ない — 石井 大海 <banzaida@...>

こんばんは、konnです。

10 messages 2007/04/05

[ruby-list:43399] ASR1.8.6.1上のvrubyでvractivexを使った時にエラーが出る件

From: Keisuke Minami <keisuke@...>
Date: 2007-04-08 12:57:42 UTC
List: ruby-list #43399
こんばんは。三並です。

またもやvrubyとActiveScriptRuby1.8.6.1についての質問です。

ActiveScriptRuby1.8.5.6では動いていた、
以下の全画面表示するFLASHプレイヤーのスクリプトが
動かなくなってしまいました。

vractivex.rbの方でwin32oleのバージョンと競合を起こしているというような
エラー表示なのですが、どう解決すべきかわからなかったので、
とりあえずここで質問させていただきました。

実行したスクリプト
===
#!ruby -Ku

require 'vr/vruby'
require 'vr/vractivex'
require 'vr/vrlayout'

class FlashAxControl < VRActiveXControl
  ACTIVEXCINFO =["ShockwaveFlash.ShockwaveFlash", "_IShockwaveFlashEvents"]
end

class PlayerForm < VRForm
	include VRHorizLayoutManager

  def construct
    addControl(FlashAxControl, "fl", "")
    @fl.ole_interface.LoadMovie(0, $file)
  end

  def self.new(screen)
    style = 0x10000000 | 0x80000000 # フルスクリーン
    screen.newform(nil, style, PlayerForm)
  end

  def start()
    move(0, 0, $width, $height)
    create.show
    self.caption = "flash player : #{$file}"
    @screen.messageloop
  end
end

file = "output.swf" # 表示するSWF
$file = "file:///" + Dir.pwd + "/" + file

# フルサイズ取得
$width, $height = VRLocalScreen.width, VRLocalScreen.height
puts "width=#{$width} height=#{$height}"

# Playerウィンドウ作成
form = PlayerForm.new(VRLocalScreen)
form.start()
===

出力された例外出力
===
C:/Program Files/ruby-1.8/lib/ruby/site_ruby/1.8/vr/vractivex.rb:36:in `get_oleinterface': This win32ole
(0.7.1) is not acceptable(version mismatch). (NotImplementedError)
        from C:/Program Files/ruby-1.8/lib/ruby/site_ruby/1.8/vr/vractivex.rb:36:in `vrinit'
        from C:/Program Files/ruby-1.8/lib/ruby/site_ruby/1.8/vr/vruby.rb:127:in `create'
        from C:/Program Files/ruby-1.8/lib/ruby/site_ruby/1.8/vr/vruby.rb:547:in `vr_addControlOriginal'
        from C:/Program Files/ruby-1.8/lib/ruby/site_ruby/1.8/vr/vrlayout.rb:112:in `addControl'
        from paraplayer.rb:27:in `construct'
        from C:/Program Files/ruby-1.8/lib/ruby/site_ruby/1.8/vr/vruby.rb:517:in `_vr_call_created'
        from C:/Program Files/ruby-1.8/lib/ruby/site_ruby/1.8/vr/vruby.rb:128:in `create'
        from paraplayer.rb:38:in `start'
        from paraplayer.rb:53
===

なお、環境は、WinXP SP2になります。
エラーを起こしたのは、ActiveScriptRuby1.8.6.1です。
vrubyは、ActiveScriptRuby同梱なので、
vrswin060205、vruby061102です。

よろしくお願いします。


In This Thread

Prev Next