2017-07-07 12 views
0

アプリケーションを開こうとしています:ブルーゾーンメインフレームエミュレータで、Rubyでメインフレームプロセスを自動化する際に刺すようにしました。Ruby Win32ole HRESULTエラーコード:0x80040154

Win32oleでアプリケーションを開こうとすると問題が発生します。ここに私のコードは、これまでのところです:

require 'win32ole' 

class BluezoneRunner 
    attr_reader :app 

    def initialize 
    @type = WIN32OLE_TYPE.new('BZWhll 7.1 Type Library', 'WhllObj') 
    @app = WIN32OLE.new('BZWhll.WhllObj') 
    end 

    def visible=(is_visible) 
    @app.visible = is_visible 
    end 

    def close 
    @app.Quit 
    end 
end 

このエラーでアプリのオブジェクトを割り当てるときにスクリプトが失敗します。

Uncaught exception: failed to create WIN32OLE object from `BZWhll.WhllObj' 
    HRESULT error code:0x80040154 
     Class not registered 
    C:/RubyProjects/mksta-sandbox/bluezone-automation/run_ole.rb:9:in `initialize' 
    C:/RubyProjects/mksta-sandbox/bluezone-automation/run_ole.rb:9:in `new' 
    C:/RubyProjects/mksta-sandbox/bluezone-automation/run_ole.rb:9:in `initialize' 
    C:/RubyProjects/mksta-sandbox/bluezone-automation/bluezone_runner.rb:3:in `new' 
    C:/RubyProjects/mksta-sandbox/bluezone-automation/bluezone_runner.rb:3:in `<top (required)>' 

私は現在、Windows 10 64ビット、ルビー2.2.4p230(2015から12を実行しています-16改訂53155)[x64-mingw32]。実行しようとしているアプリケーションは、C:\ Program Files(x86)\ BlueZone \ 7.1にあります。

このエラーのヘルプは素晴らしいでしょう!

答えて

0

私の場合のエラーは、64ビットバージョンのRubyを使用することによって発生しました。

この問題を解決するには、32ビット(X86)バージョンのRubyを使用してこのコードを実行します。

関連する問題