るりまサーチ

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

別のキーワード

  1. win32ole new
  2. win32ole name
  3. win32ole ole_type
  4. win32ole to_s
  5. win32ole ole_free

ライブラリ

クラス

検索結果

WIN32OLE#ole_free -> () (18161.0)

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

...を呼び出すことで、COMオ
ブジェクトを開放します。ole_freeを呼び出した後は、このオブジェクトに対
する操作は行えません。

excel = WIN32OLE.new('Excel.Application')
excel.ole_free # オブジェクトの解放
excel.Quit #=> RuntimeError (f...
...ェクトが解放されるとは限
りません。

excel = WIN32OLE.new('Excel.Application')
workbook = excel.Workbooks.Open('workbook.xls')
workbook.Close(:SaveChanges => false)
workbook.ole_free
excel.ole_free
# この時点でExcel.EXEは終了しない

上の例では、excel.Wo...
...は解
放されません。それに対して下の例では正しく解放されます。

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

WIN32OLE#ole_query_interface(iid) -> WIN32OLE (18.0)

IID(インターフェイスID)を指定してオブジェクトの別のインターフェイスを 持つオブジェクトを取得します。

...Eオブジェクト
@raise WIN32OLERuntimeError 指定したIIDをオブジェクトが持たない場合に通知されます。

ie = WIN32OLE.new('InternetExplorer.Application')
ie_web_app = ie.ole_query_interface('{0002DF05-0000-0000-C000-000000000046}')

上例のie_web_appは、ieと...
...intf = obj.ole_query_interface(iid)
intf.ole_free
return ver
rescue WIN32OLERuntimeError
end
end
1
end

しかし、ole_query_interfaceのような特異なメソッドを利用するよりも、
WIN32OLE.new('VisualStudio.DTE.8.0') のように生成時に...