U:RDoc::NormalClass[iI"WIN32OLE_RECORD:ET@I" Object;To:RDoc::Markup::Document: @parts[o;;[ o:RDoc::Markup::Paragraph;[I"LWIN32OLE_RECORD objects represents VT_RECORD OLE variant. ;TI"MWin32OLE returns WIN32OLE_RECORD object if the result value of invoking ;TI"OLE methods.;To:RDoc::Markup::BlankLineo; ;[I"@If COM server in VB.NET ComServer project is the following:;T@o:RDoc::Markup::Verbatim;[I",Imports System.Runtime.InteropServices ;TI"Public Class ComClass ;TI" Public Structure Book ;TI"/ _ ;TI"$ Public title As String ;TI"$ Public cost As Integer ;TI" End Structure ;TI"+ Public Function getBook() As Book ;TI"" Dim book As New Book ;TI"* book.title = "The Ruby Book" ;TI" book.cost = 20 ;TI" Return book ;TI" End Function ;TI"End Class ;T: @format0o; ;[I"Dthen, you can retrieve getBook return value from the following ;TI"Ruby script:;T@o; ;[ I"require 'win32ole' ;TI".obj = WIN32OLE.new('ComServer.ComClass') ;TI"book = obj.getBook ;TI"%book.class # => WIN32OLE_RECORD ;TI"%book.title # => "The Ruby Book" ;TI"book.cost # => 20;T; 0: @fileI"#ext/win32ole/win32ole_record.c;T:0@omit_headings_from_table_of_contents_below0; 0;0[[[[[I" class;T[[: public[[I"new;TI"#ext/win32ole/win32ole_record.c;T[:protected[[: private[[I" instance;T[[;[ [I" inspect;T@>[I"method_missing;T@>[I"ole_instance_variable_get;T@>[I"ole_instance_variable_set;T@>[I" to_h;T@>[I" typename;T@>[;[[;[[[U:RDoc::Context::Section[i0o;;[; 0;0[@2@2cRDoc::TopLevel