るりまサーチ (Ruby 2.7.0)

最速Rubyリファレンスマニュアル検索!
10件ヒット [1-10件を表示] (0.037秒)

別のキーワード

  1. win32ole new
  2. win32ole ole_type
  3. win32ole name
  4. win32ole to_s
  5. win32ole visible?

検索結果

WIN32OLE#_invoke(dispid, args, types) -> object | nil (118.0)

DISPIDとパラメータの型を指定してオブジェクトのメソッドを呼び出します。

...。型の指定には、
WIN32OLE
::VARIANTの定数を利用します。引数が不要な場
合は空配列を指定します。

@return メソッドの返り値。ただし返り値を持たないメソッドの場合はnil。

@raise WIN32OLERuntimeError オートメ...
...= WIN32OLE.new('Excel.Application')
excel._invoke(302, [], []) # DISPID 302は、Quitメソッド

MFCの制約により、バイト配列の型情報は通常
WIN32OLE
::VARIANT::VT_VARIANTとなります。このような場合に、バイト
配列を与えるつもりで

include WIN32OLE::...
...い。

include WIN32OLE::VARIANT
obj.method(DISPID, [[0, 1, 2, 3]], [VT_BYREF | VT_ARRAY | VT_UI1])

なお、VB6で作成したCOMコンポーネントのパラメータに配列を与える場合は、
WIN32OLE
::VARIANT::VT_BYREFの指定が必須です。

DISPIDはWIN32OLE_METHOD#dispidから...

WIN32OLE#_getproperty(dispid, args, types) -> object (64.0)

DISPIDとパラメータの型を指定してオブジェクトのプロパティを参照します。

...を指定します。引
数の順序は最左端の引数のインデックスを0とします。型の指定
には、WIN32OLE::VARIANTの定数を利用します。引数が不
要な場合は空配列を指定します。

このメソッドはCOMアーリ...
...返します。
@raise WIN32OLERuntimeError オートメーションサーバの呼び出しに失敗しました。
理由はメッセージのHRESULTを調べてください。

DISPID_CELLS = 238
include WIN32OLE::VARIANT
excel = WIN32OLE.new('Excel.Applicatio...
...sheet._setproperty(DISPID_CELLS, [1, 2, 'hello'], [VT_I2, VT_I2, VT_BSTR])
puts sheet._getproperty(DISPID_CELLS, [1, 2], [VT_I2, VT_I2]).value #=> 'hello'
workbook.Close(:SaveChanges => false)
excel.Quit

DISPIDはWIN32OLE_METHOD#dispidから取得できます。

@see WIN32OLE::VARIANT...

WIN32OLE#_setproperty(dispid, args, types) -> () (64.0)

DISPIDとパラメータの型を指定してオブジェクトのプロパティを設定します。

...
WIN32OLE
::VARIANTの定数を利用します。

@raise WIN32OLERuntimeError オートメーションサーバの呼び出しに失敗しました。
理由はメッセージのHRESULTを調べてください。

DISPID_CELLS = 238
include WIN32OLE::VA...
...RIANT
excel = WIN32OLE.new('Excel.Application')
puts excel._setproperty(558, # VisibleプロパティのDISPIDは558
[true], [VT_BOOL])
workbook = excel.Workbooks.Add
sheet = workbook.Worksheets[1]
sheet._setproperty(DISPID_CELLS, [1, 2, 'hello'], [VT_I2...
..., VT_I2, VT_BSTR])
puts sheet._getproperty(DISPID_CELLS, [1, 2], [VT_I2, VT_I2]).value #=> 'hello'
workbook.Close(:SaveChanges => false)
excel.Quit

DISPIDはWIN32OLE_METHOD#dispidから取得できます。

@see WIN32OLE::VARIANT...

WIN32OLE_VARIANT#vartype -> Integer (64.0)

selfの型情報を取得します。

...す。

型情報は、WIN32OLE::VARIANTの定数値の組み合わせです。

obj = WIN32OLE_VARIANT.new("string")
obj.vartype # => 8 (WIN32OLE::VARIANT::VT_BSTR)
bytes = WIN32OLE_VARIANT.new([1,2,3,4,5], VT_UI1 | VT_ARRAY)
bytes.vartype # => 8209 (WIN32OLE::VARIANT::VT_ARRAY | VT_U...

WIN32OLE_METHOD#return_type -> String (46.0)

メソッドの返り値の型名を取得します。

...名を示す文字列を返します。
@raise WIN32OLERuntimeError メソッドの型情報を取得できなかった場合に通知します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
method = WIN32OLE_METHOD.new(tobj, 'Visible')
puts method.return...
..._type # => BOOL

OLEオートメーションの型名は、対応するWIN32OLE::VARIANTの定数の先
頭の「VT_」を削除した名称を持ちます。

たとえば、32ビット符号付き整数であれば「I4」となります。

@see WIN32OLE::VARIANT...

絞り込み条件を変える

WIN32OLE_PARAM#ole_type -> String (46.0)

パラメータの型名を取得します。

...返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 9.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
param1 = method.params[0]
puts param1.ole_type # => VARIANT

OLEオートメーションの型名は、対応するWIN32OLE::VARIANTの定数の先
...
...の「VT_」を削除した名称を持ちます。

たとえば、32ビット符号付き整数であれば「I4」となります。

@see WIN32OLE::VARIANT...

WIN32OLE_VARIABLE#ole_type -> String (28.0)

変数の型を取得します。

...返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
variables = tobj.variables
variables.each do |variable|
puts "#{variable.ole_type} #{variable.name}"
end

OLEオートメーションの型名は、対応するWIN32OLE::VARIANTの定数の先...

WIN32OLE_VARIABLE#ole_type_detail -> [String] (28.0)

変数の型と属性を取得します。

...列で返します。

tobj = WIN32OLE_TYPE.new('Microsoft XML, v5.0', 'tagSTATSTG')
tobj.variables.each do |v|
puts "#{v.ole_type} [#{v.ole_type_detail.join(', ')}] #{v.name}"
end

出力結果

Unknown Type 31 [] pwcsName # => VT_LPWSTR はWIN32OLE::VARIANTで未定義なので変...
...eBits
UI4 [UI4] reserved

上例のように、WIN32OLE_VARIABLEで取得できる変数あるいはその元となる構造
体は、必ずしもOLEオートメーション互換データというわけではありません。こ
のようなデータはWIN32OLEからは利用できません。...

WIN32OLE_VARIANT#value -> object (28.0)

値に対応するRubyオブジェクトを取得します。

...値に対応するRubyオブジェクトを取得します。

@return 値に対応するRubyのオブジェクトを返します。

obj = WIN32OLE_VARIANT.new(1, WIN32OLE::VARIANT::VT_BSTR)
obj.value # => "1" (VT_BSTRを指定して生成したので、Stringオブジェクトとなる)...

WIN32OLE_VARIANT#value=(val) -> () (28.0)

WIN32OLE_VARIANTの値を再設定します。

...WIN32OLE_VARIANTの値を再設定します。

指定した値でselfを再設定します。指定値が元のVARIANT型に合わない場合は元
のVARIANT型に合うように引数を変換します。変換は、引数を一度VARIANT型に
変換してからCOMのVARIANT型変換関数(Va...
...ます。

@param val 設定値を指定します。
@raise WIN32OLERuntimeError selfが配列型です。あるいは、型変換に失敗し
ました。

obj = WIN32OLE_VARIANT.new(1) # VARIANT型にWIN32OLE::VARIANT::VT_I4を設定
obj.value = 3.2 # 3.2か...
...p obj.value # => 3 # VT_I4に変換した結果が設定される

selfが配列型のWIN32OLE_VARIANTの場合、バイト配列かつ引数が文字列の場合
を除いてWIN32OLERuntimeErrorを通知します。配列型の場合は、
WIN32OLE
_VARIANT#[]=を利用してください。...

絞り込み条件を変える