るりまサーチ

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

別のキーワード

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

ライブラリ

クラス

検索結果

WIN32OLE#ole_free -> () (18243.0)

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

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

excel = WIN32OLE.new('Excel.Application')
excel.ole_free # オブジェクトの解放
excel.Quit #=> RuntimeError (f...
...= WIN32OLE.new('Excel.Application')
workbook = excel.Workbooks.Open('workbook.xls')
workbook.Close(:SaveChanges => false)
workbook.ole_free
excel.ole_free
# この時点でExcel.EXEは終了しない

上の例では、excel.Workbooks.Openの行で、excel.Workbooksオブジェクトが...
...は解
放されません。それに対して下の例では正しく解放されます。

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_free(aWIN32OLE) -> Integer (18201.0)

引数で指定したオブジェクトを解放します。

引数で指定したオブジェクトを解放します。

このメソッドは主にWIN32OLEのデバッグおよびWIN32OLEを利用するミドルウェ
アの実装のために用意されています。このため、メソッドの内部動作は不定で
す。COMの仕様とWIN32OLEの内部処理に熟知していない場合は使用しないでくだ
さい。

@param aWIN32OLE 解放するWIN32OLEオブジェクト。

@return Releaseの戻り値。COMの仕様上は現在のオブジェクトの参照カウント
値を示します。

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

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

...ない場合に通知されます。

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

上例のie_web_appは、ieと同じインスタンスとなります。

COMの仕様では1つのインターフェイス...
...して定義しなけれ
ば追加のメソッドが呼び出せません。

たとえば、当メソッドの存在理由である
http://www.ruby-forum.com/topic/109954(なお、元のパッチと異な
りGUIDの統一フォーマットを利用するように改造されているため、IID...
...on_version(obj)
[['{CDA7305C-78B6-4D9D-90AD-93EBE71F9341}', 4],
['{DF23915F-FDA3-4DD5-9CAA-2E1372C2BB16}', 3],
['{FA238614-FBB1-4314-A7F7-49AE8BB6C6BA}', 2]].each do |iid, ver|
begin
intf = obj.ole_query_interface(iid)
intf.ole_free
return ver
rescue...