るりまサーチ

最速Rubyリファレンスマニュアル検索!
22件ヒット [1-22件を表示] (0.012秒)
トップページ > クエリ:GC[x] > ライブラリ:win32ole[x]

別のキーワード

  1. gc stat
  2. gc latest_gc_info
  3. _builtin latest_gc_info
  4. _builtin gc
  5. gc opts

クラス

キーワード

検索結果

WIN32OLE#ole_free -> () (8.0)

selfが参照するCOMオブジェクトを解放します。

...操作は行えません。

excel = WIN32OLE.new('Excel.Application')
excel.ole_free # オブジェクトの解放
excel.Quit #=> RuntimeError (failed to get Dispatch Interface)

通常は利用されなくなったWIN32OLEオブジェクトはGCのタイミングで自動的に
解放...
...中で生成される子オブジェクトからの逆参照などがあるため、
WIN32OLE
がIUnknown::Releaseを呼び出してもオブジェクトが解放されるとは限
りません。

excel = WIN32OLE.new('Excel.Application')
workbook = excel.Workbooks.Open('workbook.xls')
workbo...
...参照されているexcelオブジェクトは解
放されません。それに対して下の例では正しく解放されます。

excel = WIN32OLE.new('Excel.Application')
books = excel.Workbooks
workbook = books.Open('workbook.xls')
books.ole_free
workbook.Close(:SaveChanges => fal...

WIN32OLE::ARGV -> [object] (8.0)

直前のメソッド呼び出しの引数を格納した配列です。

...p x # => 10 …… 呼び出しによって影響を受けない
p WIN32OLE::ARGV # => ['*', 110, 11] …… 結果はARGVの対応する引数に反映される
obj.Accm '+', 10, 11
p WIN32OLE::ARGV # => ['+', 21, 11]

直前のメソッド呼び出しが例外となった...
...たれます。つまり、WIN32OLE自身がARGVの内容を消去するのは、メソッ
ド呼び出しに成功した場合のみです。このため最後のメソッド呼び出しが引数
にオブジェクトを返すタイプのメソッドだった場合、GCにオブジェクトを回...
...VB (OLE Automation server)
Public Sub GetInterface(ByRef obj)
Set Obj = New OleObject
End Sub

# Ruby
obj.GetInterface nil # 引数の数を合わせるためダミー引数を指定
WIN32OLE
::ARGV.clear # 通常は、後続のメソッド呼び出しによって消去される...