るりまサーチ (Ruby 2.5.0)

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

別のキーワード

  1. psych psych_y
  2. psych y
  3. kernel y
  4. kernel psych_y

検索結果

WIN32OLE_TYPE#default_ole_types -> [WIN32OLE_TYPE] (27607.0)

型が持つデフォルトのインターフェイスを取得します。

...ポートし
ていればデフォルトのソースインターフェイスを返します。

@return デフォルトインターフェイスをWIN32OLE_TYPEの配列として返し
ます。デフォルトインターフェイスは、最大でも、クラス操作用のイ
ンタ...
...ターフェイスの2要素です。デフォルトインターフェイスを持たない
場合は空配列を返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
tobj.default_ole_types.map {|intf| intf.name} #=> ["_Worksheet", "DocEvents"]...

WIN32OLE_TYPE#implemented_ole_types -> [WIN32OLE_TYPE] (27607.0)

この型が実装するインターフェイスを取得します。

...ーフェイスをWIN32OLE_TYPEの
配列として返します。この型がインターフェイスを実装しない場合は、
空配列を返します。

@raise WIN32OLERuntimeError 型属性が取得できない場合に通知します。

tobj = WIN32OLE_TYPE.new('Microso...

WIN32OLE_TYPE#ole_typelib -> WIN32OLE_TYPELIB | nil (27607.0)

この型を登録してある型情報ライブラリ(TypeLib)を取得します。

...TypeLib)を取得します。

@return この型を登録しているTypeLibをWIN32OLE_TYPELIBオブジェクト
として返します。見つからない場合はnilを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
puts tobj.ole_typel...

WIN32OLE_TYPE#source_ole_types -> [WIN32OLE_TYPE] (27607.0)

型が持つソースインターフェイスを取得します。

...うにイベント(WIN32OLE_EVENT)をサポートし
ているコンポーネントクラスの場合は、このメソッドの呼び出しによりイベン
トインターフェイスを調べることが可能です。

@return ソースインターフェイスをWIN32OLE_TYPEの配列とし...
...て返します。
ソースインターフェイスを持たない場合は空配列を返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
tobj.source_ole_types.map {|intf| intf.name} #=> ["DocEvents"]...

WIN32OLE_TYPELIB.typelibs -> [WIN32OLE_TYPELIB] (27607.0)

システムに登録されているすべてのTypeLibを取得します。

...システムに登録されているすべてのTypeLibを取得します。

@return 登録されているすべてのTypeLibを元にWIN32OLE_TYPELIBオブジェクト
の配列を返します。

tlibs = WIN32OLE_TYPELIB.typelibs...

絞り込み条件を変える

WIN32OLE_TYPE#ole_type -> String | nil (27307.0)

selfの型の種類(TYPEKIND)を取得します。

...取得します。

@return selfの型の種類を文字列で返します。情報が取得できない場合はnilを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
p tobj.ole_type # => Class

ole_typeには以下があります。

: Enum
...
...コンポーネントクラス(InterfaceやDispatchの実装)(5)
: Alias
他の型の別名(6)
: Union
共用体(7)
: Max
型の種類を示す列挙体の終端マーカ(8)

MaxはTYPEKINDの終端マーカなので意味を持ちません。

@see WIN32OLE_TYPE#typekind...

WIN32OLE_TYPE#src_type -> String | nil (27307.0)

selfが他の型の別名ならば、元の型名を取得します。

...ます。

@return selfが別名ならば元の型名を文字列で返します。別名でなければnilを
返します。

tobj = WIN32OLE_TYPE.new('Microsoft Office 14.0 Object Library', 'MsoRGBType')
p tobj.src_type # => "I4"

この例は、OfficeのMsoRGBType型は符号付...

WIN32OLE_TYPE#typekind -> Integer (27307.0)

selfの種類を示す値を取得します。

...

値の意味については、WIN32OLE_TYPE#ole_typeを参照してください。

@return 型の種類を示す数値を返します。
@raise WIN32OLERuntimeError 型の種類(TYPEKIND)を取得できない場合に通知します。

tobj = WIN32OLE_TYPE.new('Microsoft Word 14.0 Objec...
...t Library', 'Documents')
p tobj.typekind # => 4

@see WIN32OLE_TYPE#ole_type...

WIN32OLE_TYPE.typelibs -> [String] (27307.0)

システムに登録されているすべてのTypeLibのドキュメント文字列を取得します。

...メント文字列の配
列を返します。

Ruby-1.9.1からは、すべてのTypeLibのドキュメント文字列を取得するには、
WIN32OLE
_TYPELIBオブジェクトを利用して、以下のように記述してくだ
さい。

WIN32OLE
_TYPELIB.typelibs.map {|t| t.name}...

WIN32OLE#ole_typelib -> WIN32OLE_TYPELIB (18607.0)

オブジェクトに対応する型情報ライブラリ(TypeLib)を WIN32OLE_TYPELIBとして返します。

...オブジェクトに対応する型情報ライブラリ(TypeLib)を
WIN32OLE
_TYPELIBとして返します。

OLEオートメーションではクラス、インターフェイス、メソッド、引数などの型
情報と文書情報を型情報ライブラリとして利用します。...
...Infoインターフェイス)で提供します。WIN32OLEは、このオブジェクト
をラップしてWIN32OLE_TYPELIBとして提供します。

@return オブジェクトに対応するWIN32OLE_TYPELIBオブジェクト。
@raise WIN32OLERuntimeError オートメーションサーバの呼...
...び出しに失敗しました。
型情報ライブラリ(TypeLib)が提供されていない場合などに発生します。

excel = WIN32OLE.new('Excel.Application')
tlib = excel.ole_typelib
puts tlib.name # => 'Microsoft Excel 9.0 Object Library'...

絞り込み条件を変える

WIN32OLE_TYPELIB#ole_types -> [WIN32OLE_TYPE] (18607.0)

TypeLibに格納されているすべての型を取得します。

...挙子)、構造体などがあります。

@return TypeLibに格納されているすべての型をWIN32OLE_TYPEオブジェ
クトの配列として返します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
classes = tlib.ole_types.map{|k| k.name} # => ["...

WIN32OLE#_getproperty(dispid, args, types) -> object (18307.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) -> () (18307.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#ole_query_interface(iid) -> WIN32OLE (18307.0)

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

...return iidパラメータで指定したインターフェイスを持つWIN32OLEオブジェクト
@raise WIN32OLERuntimeError 指定したIIDをオブジェクトが持たない場合に通知されます。

ie = WIN32OLE.new('InternetExplorer.Application')
ie_web_app = ie.ole_query_inter...
...たOLEオートメーションサーバでは本メソッドが意味
を持つことはありません。というのは、2つ以上の異なるWIN32OLEで操作可能な
インターフェイスを持つということは、IID_IDispatch(OLEオートメーション
のインターフェイスID...
...っているため、静的に型を解決して
いる場合は、追加のメソッドの呼び出しを記述できません。

しかし、WIN32OLEが利用するIDispatchインターフェイスは、メソッド名による
動的なメソッド検索が行われます。このため、Soluti...

WIN32OLE#setproperty(name, args..., val) -> () (18307.0)

オブジェクトのプロパティを設定します。

...ます。
@param args 集合的なプロパティに対する設定項目を特定するための引数を指
定します。
@raise WIN32OLERuntimeError オートメーションサーバの呼び出しに失敗しました。
理由はメッセージのHRESUL...
...のため、次の例のようにsetpropertyメソッドを利用して、パラメータ付きプ
ロパティを設定します。


excel = WIN32OLE.new('Excel.Application')
excel.visible = true
sheet = excel.Workbooks.Add.Worksheets[1]
sheet.setproperty(:Cells, 1, 2, 32)
sheet.set...

絞り込み条件を変える

WIN32OLE#setproperty(name, val) -> () (18307.0)

オブジェクトのプロパティを設定します。

...ます。
@param args 集合的なプロパティに対する設定項目を特定するための引数を指
定します。
@raise WIN32OLERuntimeError オートメーションサーバの呼び出しに失敗しました。
理由はメッセージのHRESUL...
...のため、次の例のようにsetpropertyメソッドを利用して、パラメータ付きプ
ロパティを設定します。


excel = WIN32OLE.new('Excel.Application')
excel.visible = true
sheet = excel.Workbooks.Add.Worksheets[1]
sheet.setproperty(:Cells, 1, 2, 32)
sheet.set...

WIN32OLE::CP_SYMBOL -> Integer (18307.0)

文字コードの変換にシンボルを利用することを示します(42)。

文字コードの変換にシンボルを利用することを示します(42)。

WIN32OLE::LOCALE_SYSTEM_DEFAULT -> Integer (18307.0)

システム既定のロケールを示すLCID(0x0800)です。WIN32OLEがオートメーショ ンを利用する場合の既定値です。

...システム既定のロケールを示すLCID(0x0800)です。WIN32OLEがオートメーショ
ンを利用する場合の既定値です。...

WIN32OLE::VARIANT::VT_ARRAY -> Integer (18307.0)

配列(SafeArray)を示します(0x2000)。

配列(SafeArray)を示します(0x2000)。

WIN32OLE::VARIANT::VT_BYREF -> Integer (18307.0)

参照を示します(0x4000)。

参照を示します(0x4000)。

VT_BYREFは型ではなく、参照を示す型属性です。OLEオートメーションサーバが
結果を引数に戻す場合、参照先の型を示す値と論理和を取るために利用します。

絞り込み条件を変える

WIN32OLE::VARIANT::VT_CY -> Integer (18307.0)

通貨型(CURRENCY)を示します(6)。

...とで、加減算について誤差を生じさせない小数点
数を表現します。

CURRENCY型の有効範囲は-922337203685477.5808から922337203685477.5807です。

WIN32OLE
はオートメーション呼び出しの返り値がCURRENCY型の場合、文字列に
変換します。...

WIN32OLE::VARIANT::VT_EMPTY -> Integer (18307.0)

空(初期化状態)のオブジェクトを示します(0)。

空(初期化状態)のオブジェクトを示します(0)。

WIN32OLE_METHOD#return_type -> String (18307.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_METHOD#return_type_detail -> [String] (18307.0)

返り値の型と属性を取得します。

...します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
method = WIN32OLE_METHOD.new(tobj, 'Workbooks')
p method.return_type_detail # => ["PTR", "USERDEFINED", "Workbooks"]

属性が付加されていない場合は、WIN32OLE_METHOD#return_typeを要...

WIN32OLE_METHOD#return_vtype -> Integer (18307.0)

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

...す数値(VARENUM)を返します。
@raise WIN32OLERuntimeError メソッドの型情報を取得できなかった場合に通知します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
method = WIN32OLE_METHOD.new(tobj, 'Visible')
puts method.retur...

絞り込み条件を変える

WIN32OLE_PARAM#ole_type -> String (18307.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_PARAM#ole_type_detail -> [String] (18307.0)

パラメータの属性を取得します。

...の属性を取得します。

@return 型の属性を文字列配列で返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 9.0 Object Library', 'IWorksheetFunction')
method = WIN32OLE_METHOD.new(tobj, 'SumIf')
param1 = method.params[0]
p param1.ole_type_detail # => ["PTR", "USER...

WIN32OLE_TYPELIB#library_name -> String (18307.0)

TypeLibのヘルプファイル用ドキュメント文字列からTypeLibの名前を取得します。

...名前を取得します。

@return TypeLibの名前を文字列で返します。
@raise WIN32OLERuntimeError ドキュメント文字列が取得できなかった場合に通知します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
tlib.library_name # => Excel...

WIN32OLE_VARIABLE#ole_type -> String (18307.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] (18307.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#vartype -> Integer (18307.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_VARIANT.array(dims, vt) -> WIN32OLE_VARIANT (18307.0)

配列用のVARIANTオブジェクトを生成します。

...WIN32OLE::VARIANTの定数で指定します。
@return 指定された次元/要素数を持つWIN32OLE_VARIANTオブジェクト。

次の例は、最初の次元が3要素、次の次元が4要素の2次元配列を生成する例です。

ole_ary = WIN32OLE_VARIANT.array([3,4], WIN32OLE::VA...
...RIANT::VT_I4)
ruby_ary = ole_ary.value # => [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]

@see WIN32OLE_VARIANT#value, WIN32OLE::VARIANT...

WIN32OLE_VARIANT::Empty -> WIN32OLE_VARIANT (18307.0)

EMPTY型のWIN32OLE_VARIANTオブジェクトです。

...EMPTY型のWIN32OLE_VARIANTオブジェクトです。

このオブジェクトは、VOID型の戻り値や、値が空なことを明示しなければなら
ない特殊な引数に利用します。

@see WIN32OLE::VARIANT::VT_EMPTY...

WIN32OLE_TYPE (18007.0)

WIN32OLE_TYPEオブジェクトは、型情報ライブラリ(TypeLib)内に定義された 1つの型情報を保持します。

...WIN32OLE_TYPEオブジェクトは、型情報ライブラリ(TypeLib)内に定義された
1つの型情報を保持します。

=== サンプルコード

require 'win32ole'

excel_app_type = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
puts excel_app_type.pro...
...lication.14"



Ruby-1.9.1以降、WIN32OLE_TYPELIBオブジェクトの
WIN32OLE
_TYPELIB#ole_typesメソッドを利用して、型情報ライブラリ内
に定義されているすべての型情報をWIN32OLE_TYPEオブジェクトの配列として取
得できます。

@see WIN32OLE_TYPELIB...

WIN32OLE_TYPELIB (18007.0)

OLEオートメーションサーバの型情報ライブラリ(TypeLib)を操作するための クラスです。

...要求によって参照可能となりま
す。

WIN32OLE
_TYPELIBクラスは、TypeLibを操作して各種情報を参照するためのオブ
ジェクトを生成します。

=== サンプルコード

require 'win32ole'

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library'...
...rsion = 1.7
creatable classes:
Application: PROGID=Excel.Application.14
Chart: PROGID=Excel.Chart.8
Worksheet: PROGID=Excel.Sheet.8

ここでは、Excelのクラスのうち、WIN32OLE.newで作成可能なクラスを引
数で指定する名前(PROGID)と共に示しています。...

絞り込み条件を変える

WIN32OLE#ole_type -> WIN32OLE_TYPE | nil (9607.0)

WIN32OLE_TYPEオブジェクトを返します。

...WIN32OLE_TYPEオブジェクトを返します。

WIN32OLE
_TYPEオブジェクトは、WIN32OLEオブジェクトの文書情報と型情
報を保持するオブジェクトです。

@return オブジェクトに関連するWIN32OLE_TYPEオブジェクトを返します。
オブジェク...
...トがドキュメント情報を持たない場合はnilを返します。

excel = WIN32OLE.new('Excel.Application')
tobj = excel.ole_obj_help

@see WIN32OLE_TYPE...

WIN32OLE_TYPE#default_event_sources -> [WIN32OLE_TYPE] (9307.0)

型が持つソースインターフェイスを取得します。

...(イ
ベントの通知元となるインターフェイス)を返します。

@return デフォルトのソースインターフェイスをWIN32OLE_TYPEの配列と
して返します。返すのは配列ですが、デフォルトのソースインターフェ
イスは最大...
...bj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
tobj.default_event_sources.map {|intf| intf.name} #=> ["DocEvents"]

WIN32OLE
_EVENT.newでインターフェイス名を指定しない場合は、ここで
返されたインターフェイスが選択されます。

...
...るために、
WIN32OLE
_EVENT.message_loopの呼び出しが必要な点に注意してください。
ここでは最終イベントのStatusTextChangeイベントのメッセージについては既
知としています。

# coding : cp932
require 'win32ole'

type = WIN32OLE_TYPE.new('Micro...

WIN32OLE_TYPE.new(libname, ole_class) -> WIN32OLE_TYPE (9307.0)

WIN32OLE_TYPEオブジェクトを生成します。

...WIN32OLE_TYPEオブジェクトを生成します。

@param libname 生成するTypeLibのレジストリ上のドキュメント文字列
WIN32OLE_TYPELIB#name)または
GUID(WIN32OLE_TYPELIB#guid)またはTLBファイル名を
文字列で指...
...ypeLIbに定義された型の情報を格納したWIN32OLE_TYPEオブジェクトを返します。
@raise WIN32OLERuntimeError TypeLibが見つかりません。またはole_classで指定した型が未定義です。

excel_app_type = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'A...
...pplication')
puts excel_app_type.progid # => "Excel.Application.14"

TypeLibに定義されているすべての型を取得するには、
WIN32OLE
_TYPELIBオブジェクトのWIN32OLE_TYPELIB#ole_typesメ
ソッドを利用します。...

WIN32OLE_TYPE.ole_classes(libname) -> [WIN32OLE_TYPE] (9307.0)

TypeLibで定義されているすべての型情報を取得します。

...WIN32OLE_TYPELIB#name)または
GUID(WIN32OLE_TYPELIB#guid)またはTLBファイル名を
文字列で指定します。
@return TypeLibに格納されているすべての型をWIN32OLE_TYPEオブジェクトの配列として返します。
@raise WIN32OLERun...
...types = WIN32OLE_TYPE.ole_classes('Microsoft Excel 14.0 Object Library')
classes = types.map{|k| k.name} # => ["Adjustments", "CalloutFormat", ...]

Ruby-1.9.1からは、TypeLibに定義されているすべての型を取得するには、
WIN32OLE
_TYPELIBオブジェクトのWIN32OLE_TYPELIB...

WIN32OLE_TYPELIB#ole_classes -> [WIN32OLE_TYPE] (9307.0)

TypeLibに格納されているすべての型を取得します。

...挙子)、構造体などがあります。

@return TypeLibに格納されているすべての型をWIN32OLE_TYPEオブジェ
クトの配列として返します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
classes = tlib.ole_types.map{|k| k.name} # => ["...

絞り込み条件を変える

WIN32OLE_TYPELIB.new(libname, mjv = nil, miv = nil) -> WIN32OLE_TYPELIB (9307.0)

WIN32OLE_TYPELIBオブジェクトを生成します。

...WIN32OLE_TYPELIBオブジェクトを生成します。

@param libname 生成するTypeLibのレジストリ上のドキュメント文字列
WIN32OLE_TYPELIB#name)または
GUID(WIN32OLE_TYPELIB#guid)またはTLBファイル名を
文字列で...
...
@return libnameで指定したWIN32OLE_TYPELIBオブジェクトを返します。
@raise WIN32OLERuntimeError 引数で指定したTypeLibが見つかりません。

tlib1 = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
tlib2 = WIN32OLE_TYPELIB.new('{00020813-0000-0000-C0...
...0000000046}')
tlib3 = WIN32OLE_TYPELIB.new('{00020813-0000-0000-C000-000000000046}', 1.7)
tlib4 = WIN32OLE_TYPELIB.new('{00020813-0000-0000-C000-000000000046}', 1, 7)
tlib5 = WIN32OLE_TYPELIB.new("C:\\WINDOWS\\SYSTEM32\\SHELL32.DLL")
puts tlib1.name # => 'Microsoft Excel 14.0 Object...

WIN32OLE_TYPE#guid -> String | nil (9007.0)

この型のGUID(グローバル一意識別子)を取得します。

...意識別子)を取得します。

@return GUIDを文字列で返します。GUIDを持たない型の場合はnilを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
puts tobj.guid # => {00024500-0000-0000-C000-000000000046}

GUIDは、COMのク...

WIN32OLE_TYPE#helpcontext -> Integer | nil (9007.0)

この型に関連するヘルプファイルのトピックID(ヘルプコンテキスト)を取得 します。

...

@return 型に関連するヘルプコンテキストを整数で返します。ヘルプコンテキ
ストが登録されていない場合はnilを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
puts tobj.helpcontext # => 131185...

WIN32OLE_TYPE#helpfile -> String | nil (9007.0)

オブジェクトに関連付けられたヘルプファイルのフルパス名。

...ジェクトに関連付けられたヘルプファイルのフルパス名。

ここで返されたヘルプファイルを表示するには、
WIN32OLE
#ole_show_helpメソッドを呼び出します。

オブジェクトがヘルプファイルを持たない場合はnilを返します。

@ret...
...未定義の場合はnilを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
puts tobj.helpfile # => C:\...\VBAXL9.CHM
WIN32OLE
.ole_show_help tobj.helpfile, tobj.helpcontext
# 注)WIN32OLE.ole_show_help(tobj) の呼び出しが望ましい...

WIN32OLE_TYPE#helpstring -> String | nil (9007.0)

型のドキュメント文字列を取得します。

...メント文字列を取得します。

@return ドキュメント文字列を返します。未定義の場合はnilを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Internet Controls', 'IWebBrowser')
p tobj.helpstring # => "Web Browser interface"

ドキュメント文字列は、コ...

絞り込み条件を変える

WIN32OLE_TYPE#inspect -> String (9007.0)

selfを説明的な文字列で表現します。

...ます。

@return "#<WIN32OLE_TYPE"とWIN32OLE_TYPE#to_sの結果を「:」で結合
し、「>」で閉じた文字列を返します。

x = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
puts x.inspect #=> #<WIN32OLE_TYPE:Worksheet>

@see WIN32OLE_TYPE#to_s...

WIN32OLE_TYPE#major_version -> Integer (9007.0)

型のメジャーバージョン番号を取得します。

...取得します。

@return 型のメジャーバージョン番号を整数で返します。
@raise WIN32OLERuntimeError 型属性の読み取りに失敗すると通知します。

tobj = WIN32OLE_TYPE.new('Microsoft Word 14.0 Object Library', 'Documents')
p tobj.major_version # => 8...

WIN32OLE_TYPE#minor_version -> Integer (9007.0)

型のマイナーバージョン番号を取得します。

...取得します。

@return 型のマイナーバージョン番号を整数で返します。
@raise WIN32OLERuntimeError 型属性の読み取りに失敗すると通知します。

tobj = WIN32OLE_TYPE.new('Microsoft Word 14.0 Object Library', 'Documents')
p tobj.minor_version # => 5...

WIN32OLE_TYPE#name -> String (9007.0)

selfの型名を取得します。

...selfの型名を取得します。

@return selfの型名を文字列で返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
p tobj.name # => "Application"...

WIN32OLE_TYPE#ole_methods -> [WIN32OLE_METHOD] (9007.0)

型が持つメソッドのメタデータを取得します。

...タを取得します。

@return 型が持つメソッドのメタデータをWIN32OLE_METHODの配列として返します。
メソッドを持たない場合は空配列を返します。


tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
methods = tobj.ol...
...e_methods.map {|m| m.name }
# => ['QueryInterface', 'AddRef', 'Release',....]

@see WIN32OLE_METHOD...

絞り込み条件を変える

WIN32OLE_TYPE#progid -> String | nil (9007.0)

selfのPROGIDを取得します。

...リ登録名です。WIN32OLE.newの引数に指定して
WIN32OLE
オブジェクトを生成できます。

@return selfのPROGIDを文字列で返します。selfがPROGIDを持たない、または
CoClassでない場合はnilを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Exc...
...el 14.0 Object Library', 'Application')
p tobj.progid # => "Excel.Application.14"

この例は、ExcelのApplicationクラスが「Excel.Application.14」という
PROGIDを持つことを示します。

@see WIN32OLE.new...

WIN32OLE_TYPE#to_s -> String (9007.0)

selfの型名を取得します。

...selfの型名を取得します。

@return selfの型名を文字列で返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
p tobj.name # => "Application"...

WIN32OLE_TYPE#variables -> [WIN32OLE_VARIABLE] (9007.0)

型が持つ変数を取得します。

...、メンバ変数の情報を
WIN32OLE
_VARIABLEオブジェクトの配列として返します。

@return 型が持つ変数情報をWIN32OLE_VARIABLEの配列として返します。
変数を持たない場合は空配列を返します。
@raise WIN32OLERuntimeError 型属性が取得...
...できない場合に通知します。

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

上記を実行すると以下の出力が得られます。

xlChart = -4109
x...
...lDialogSheet = -4116
xlExcel4IntlMacroSheet = 4
xlExcel4MacroSheet = 3
xlWorksheet = -4167

@see WIN32OLE_VARIABLE...

WIN32OLE_TYPE#visible? -> bool (9007.0)

この型が公開されているかどうかを照会します。

...この型が公開されているかどうかを照会します。

@return 公開されていれば真を返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
p tobj.visible? # => true...

WIN32OLE_TYPE.progids -> [String] (9007.0)

システムに登録されているすべてのコンポーネントクラスのPROGIDを取得します。

...スのPROGIDを
文字列配列で返します。

excel = nil
WIN32OLE
_TYPE.progids.each do |pg|
if pg =~ /excel\.application/i # ExcelのPROGIDをバージョン無視で取り出す
excel = WIN32OLE.new(pg)
break
end
end
unless excel
$stderr.puts "Excel i...
...exit(1)
end
excel.visible = true
# ...
excel.Quit

PROGIDは、生成可能なOLEオートメーションサーバのCoClass(コンポーネント
クラス)が持つレジストリ登録名です。WIN32OLE.newの引数に指定して
WIN32OLE
オブジェクトを生成できます。...

絞り込み条件を変える

WIN32OLE_TYPELIB#guid -> String (9007.0)

TypeLibのGUIDを取得します。

...TypeLibのGUIDを取得します。

@return TypeLibのGUIDを文字列で返します。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.guid # => '{00020813-0000-0000-C0...

WIN32OLE_TYPELIB#major_version -> Integer (9007.0)

TypeLibのメジャーバージョン番号を取得します。

...取得します。

@return TypeLibのメジャーバージョン番号を整数で返します。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.major_version # => 1...

WIN32OLE_TYPELIB#minor_version -> Integer (9007.0)

TypeLibのマイナーバージョン番号を取得します。

...取得します。

@return TypeLibのマイナーバージョン番号を整数で返します。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.minor_version # => 7...

WIN32OLE_TYPELIB#name -> String (9007.0)

TypeLibのドキュメント文字列を取得します。

...どに利用可能なTypeLibの簡単な
説明文で、通常バージョン番号を含みます。

@return TypeLibのドキュメント文字列を返します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.name # => 'Microsoft Excel 14.0 Object Library'...

WIN32OLE_TYPELIB#path -> String (9007.0)

TypeLibのパス名を取得します。

...、Windowsのパス名形式(ディレクトリ区切りは「\」)
です。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.path # => 'C:\...\EXCEL.EXE'

Typ...

絞り込み条件を変える

WIN32OLE_TYPELIB#to_s -> String (9007.0)

TypeLibのドキュメント文字列を取得します。

...どに利用可能なTypeLibの簡単な
説明文で、通常バージョン番号を含みます。

@return TypeLibのドキュメント文字列を返します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.name # => 'Microsoft Excel 14.0 Object Library'...

WIN32OLE_TYPELIB#version -> Float (9007.0)

TypeLibのバージョン番号を取得します。

...号、小数点
数部にマイナーバージョン番号を設定したFloatで返します。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.version # => 1.7...

WIN32OLE_TYPELIB#visible? -> bool (9007.0)

TypeLibの情報が公開情報かどうかを照会します。

...とみなして偽を返します。

@return TypeLibが公開可能であれば真を返します。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.visible? # => true...

WIN32OLE#[](key...) -> object (307.0)

オブジェクトのデフォルトプロパティを参照します。

...ションにはデフォルトプロパティというプロパティ名を指定せず
にアクセスできるプロパティがあります。

WIN32OLE
からデフォルトプロパティにアクセスするには、[]内に必要なキーを
「,」で区切って記述します。シンボル...
...を指定します。プロ
パティの特定に複数のキーが必要な場合は「,」で区切って列記します。

@return プロパティ値を返します。

fsys = WIN32OLE.new('Scripting.FileSystemObject')
fsys.Drives[:c].FreeSpace #=> Cドライブの空き容量...

WIN32OLE#[]=(key..., value) -> () (307.0)

オブジェクトのデフォルトプロパティを設定します。

...ションにはデフォルトプロパティというプロパティ名を指定せず
にアクセスできるプロパティがあります。

WIN32OLE
からデフォルトプロパティにアクセスするには、[]内に必要なキーを
記述します。

なおデフォルトプロパ...
...に設定する値を指定します。

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

dict = WIN32OLE.new('Scripting.Dictionary')
dict[:a] = 0x41
d...

絞り込み条件を変える

WIN32OLE#_invoke(dispid, args, types) -> object | nil (307.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#ole_obj_help -> WIN32OLE_TYPE | nil (307.0)

WIN32OLE_TYPEオブジェクトを返します。

...WIN32OLE_TYPEオブジェクトを返します。

WIN32OLE
_TYPEオブジェクトは、WIN32OLEオブジェクトの文書情報と型情
報を保持するオブジェクトです。

@return オブジェクトに関連するWIN32OLE_TYPEオブジェクトを返します。
オブジェク...
...トがドキュメント情報を持たない場合はnilを返します。

excel = WIN32OLE.new('Excel.Application')
tobj = excel.ole_obj_help

@see WIN32OLE_TYPE...

WIN32OLE_METHOD.new(ole_type, method) -> WIN32OLE_METHOD (307.0)

WIN32OLE_TYPEとメソッド名を指定してWIN32OLE_METHODのインスタンス を生成します。

...WIN32OLE_TYPEとメソッド名を指定してWIN32OLE_METHODのインスタンス
を生成します。

OLEオートメーションサーバの型情報とメソッド名からWIN32OLE_METHODのイン
スタンスを生成します。

アプリケーションプログラムでは、WIN32OLE_METHO...
...WIN32OLE#ole_methodなどのメソッドを参照するほ
うが簡単です。

@param ole_type WIN32OLE_TYPEのインスタンス。
@param method メソッド名を文字列で指定します。
@return methodパラメータに対応するWIN32OLE_METHODのインスタンス。
@raise WIN32OLERu...
...ntimeError methodパラメータで指定したメソッドが見つかりません。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')...

WIN32OLE_VARIANT.new(val, vartype = nil) -> WIN32OLE_VARIANT (307.0)

指定したオブジェクトを値とするWIN32OLE_VARIANTオブジェクトを生成します。

...ジェクトを値とするWIN32OLE_VARIANTオブジェクトを生成します。

@param val ラップするRubyオブジェクトを指定します。
@param vartype 省略時はWIN32OLEが自動型変換を行います。指定する場合は
WIN32OLE
::VARIANTの定数を指定し...
...持つWIN32OLE_VARIANTオブジェクトを返します。

@raise TypeError val引数の型がArray、String、Integer、Float、Time、
WIN32OLE
WIN32OLE_VARIANT、TrueClass、FalseClass、
NilClass のいずれでもありません。

shell = WIN32OLE.new('...
...Shell.Application')
folder = shell.NameSpace('C:\\Users\\Public\\Documents')
item = folder.ParseName('test.txt')
v = WIN32OLE_VARIANT.new('Delete')
item.invokeVerb(v) # => ゴミ箱への移動ダイアログを表示

バイト配列を生成するには、以下のようにvartype...