Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Ru by ize   による言語境界の越え方
Agenda <ul><li>TBD </li></ul>
Win32OLE <ul><li>助田さん作成 </li></ul><ul><li>IDispatch </li></ul><ul><li>OLE オートメーション </li></ul><ul><li>VARIANT </li></ul><ul...
COM <ul><li>VTBL </li></ul><ul><li>IUnknown*  ( QI 、 AddRef 、 Release) </li></ul><ul><li>Factory </li></ul><ul><ul><li>ICl...
WSC <ul><li>Windows Script Component </li></ul><ul><li>ScrObj.DLL </li></ul><ul><li>スクリプトが COM のオブジェクト </li></ul><ul><li>R...
Rubyize <ul><li>ASR 付属 </li></ul><ul><li>インストールディレクトリ samples
ubyize </li></ul><ul><li>準備:  regsvr32 rbobj.wsc </li></ul><...
Rubyize JScript VBScript
Rubyize Html Application DOM VBScript Ruby ActiveScriptRuby / Win32OLE name String:Arton VBClass:val {‘VB’=>}
Rubyize HOST ScrObj.DLL OLE*.DLL   RScript18.DLL msvcrt-ruby18.dll          Object IDispatch* IActiveScriptSite* IActiveSc...
ActiveScriptHost <ul><li>直接 Ruby をホストするより簡単 </li></ul><ul><li>スクリプトニュートラル </li></ul>
Upcoming SlideShare
Loading in …5
×

Rubyize

972 views

Published on

RubyKaigi 2006

Published in: Technology, Education
  • Be the first to comment

Rubyize

  1. 1. Ru by ize による言語境界の越え方
  2. 2. Agenda <ul><li>TBD </li></ul>
  3. 3. Win32OLE <ul><li>助田さん作成 </li></ul><ul><li>IDispatch </li></ul><ul><li>OLE オートメーション </li></ul><ul><li>VARIANT </li></ul><ul><li>型フラグとデータによる汎用型 </li></ul><ul><li>ITypeInfo </li></ul><ul><li>オブジェクトの型情報 </li></ul>
  4. 4. COM <ul><li>VTBL </li></ul><ul><li>IUnknown* ( QI 、 AddRef 、 Release) </li></ul><ul><li>Factory </li></ul><ul><ul><li>IClassFactory </li></ul></ul><ul><ul><ul><li>CoCreateInstance API </li></ul></ul></ul><ul><li>レジストリ </li></ul><ul><ul><li>ProgID </li></ul></ul><ul><ul><li>CLSID </li></ul></ul>
  5. 5. WSC <ul><li>Windows Script Component </li></ul><ul><li>ScrObj.DLL </li></ul><ul><li>スクリプトが COM のオブジェクト </li></ul><ul><li>Rubyize も WSC </li></ul>
  6. 6. Rubyize <ul><li>ASR 付属 </li></ul><ul><li>インストールディレクトリ samples ubyize </li></ul><ul><li>準備: regsvr32 rbobj.wsc </li></ul><ul><li>利用: </li></ul><ul><li>  Set ruby = CreateObject(&quot; ruby.object &quot;) </li></ul><ul><li>  ruby = ActiveXObject.new (&quot; ruby.object &quot;) </li></ul>
  7. 7. Rubyize JScript VBScript
  8. 8. Rubyize Html Application DOM VBScript Ruby ActiveScriptRuby / Win32OLE name String:Arton VBClass:val {‘VB’=>}
  9. 9. Rubyize HOST ScrObj.DLL OLE*.DLL   RScript18.DLL msvcrt-ruby18.dll          Object IDispatch* IActiveScriptSite* IActiveScript* IDispatch*
  10. 10. ActiveScriptHost <ul><li>直接 Ruby をホストするより簡単 </li></ul><ul><li>スクリプトニュートラル </li></ul>

×