Using win32ole to access the Flash ExternalInterface API?

Hi

I am working on a master thesis at Norwegian University of Science and
Technology, and I am trying to create a open source framework for
functional testing of Flex applications. And I want to do it in Ruby.

I am playing with the ExternalInterface API for Flash applications. With
this API it is possible to define methods, which will be visible through
activex.

This is shown in the example in the link below
http://livedocs.adobe.com/flex/201/html/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Book_Parts&file=19_External_Interface_178_5.html

This example uses C#, but I was thinking it should be possible with the
use of win32ole.

I am able to reach the movie object with win32ole, but I don’t know how
to be able to call the methods created in the Flex application.

I am not that familiar with the win32ole, but can it work as a activex
control, or do I need something else?

Thank you for any advice!

It’s very simple really, you just instantiate a Ruby object to the
WIN32OLE interface of the native API, then call the native API’s
methods as methods of the object you’ve just created. Example:

require ‘win32ole’

param1 = 0
param2 = ‘test’

interface = WIN32OLE.new(‘registered_OLE_API_here’)
interface.NativeMethodReqIntAndString(param1, param2)

nativeObj = interface.ReturnSomeObject
nativeObj.ObjectNativeMethod

interface.NativeMethodReqNativeObj(nativeObj)

This is a trivial example, but shows how you can instantiate and use
native objects using the win32ole interface, and how you can pass them
back to the native API as method parameters.

Hope this helps,
–Kris

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs