クラス
- WIN32OLE (11)
-
WIN32OLE
_ METHOD (10) -
WIN32OLE
_ PARAM (9) -
WIN32OLE
_ TYPE (21) -
WIN32OLE
_ TYPELIB (11) -
WIN32OLE
_ VARIABLE (2) -
WIN32OLE
_ VARIANT (4)
キーワード
- [] (1)
- []= (1)
-
_ getproperty (1) -
_ invoke (1) -
_ setproperty (1) - default (1)
-
default
_ event _ sources (1) -
default
_ ole _ types (1) - dispid (1)
- guid (2)
- helpcontext (2)
- helpfile (2)
- helpstring (2)
-
implemented
_ ole _ types (1) - input? (1)
- inspect (1)
-
library
_ name (1) -
major
_ version (2) -
minor
_ version (2) - name (3)
-
ole
_ classes (1) -
ole
_ method _ help (1) -
ole
_ methods (1) -
ole
_ obj _ help (1) -
ole
_ put _ methods (1) -
ole
_ respond _ to? (1) -
ole
_ type (4) -
ole
_ type _ detail (2) -
ole
_ typelib (2) -
ole
_ types (1) - optional? (1)
- output? (1)
- params (1)
- path (1)
- progid (1)
-
return
_ type (1) -
return
_ type _ detail (1) -
return
_ vtype (1) - retval? (1)
- setproperty (2)
-
size
_ opt _ params (1) -
size
_ params (1) -
source
_ ole _ types (1) -
src
_ type (1) -
to
_ s (3) - typekind (1)
- value= (1)
- variables (1)
- vartype (1)
- version (1)
- visible? (2)
検索結果
先頭5件
-
WIN32OLE
_ TYPE # implemented _ ole _ types -> [WIN32OLE _ TYPE] (73210.0) -
この型が実装するインターフェイスを取得します。
...ーフェイスをWIN32OLE_TYPEの
配列として返します。この型がインターフェイスを実装しない場合は、
空配列を返します。
@raise WIN32OLERuntimeError 型属性が取得できない場合に通知します。
tobj = WIN32OLE_TYPE.new('Microso... -
WIN32OLE
_ TYPE # ole _ typelib -> WIN32OLE _ TYPELIB | nil (55210.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] (55210.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
_ TYPE # default _ ole _ types -> [WIN32OLE _ TYPE] (54910.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 # ole _ type -> String | nil (54628.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
_ VARIABLE # ole _ type -> String (54610.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] (54610.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
# ole _ type -> WIN32OLE _ TYPE | nil (46210.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
# ole _ typelib -> WIN32OLE _ TYPELIB (46210.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] (46210.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
# ole _ obj _ help -> WIN32OLE _ TYPE | nil (45910.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
# ole _ put _ methods -> [WIN32OLE _ METHOD] (45910.0) -
オブジェクトの設定可能プロパティ情報をWIN32OLE_METHODの配列として 返します。
...ティ情報をWIN32OLE_METHODの配列として
返します。
ole_put_methodsメソッドは、OLEオートメーションサーバのメソッドのうちプ
ロパティ設定メソッドに属するものをWIN32OLE_METHODの配列として返し
ます。
@return WIN32OLE_METHODの配列。......た。
型情報ライブラリ(TypeLib)が提供されていない場合などに発生します。
excel = WIN32OLE.new('Excel.Application')
properties = excel.ole_put_methods
@see WIN32OLE#ole_methods, WIN32OLE#ole_func_methods,
WIN32OLE#ole_get_methods... -
WIN32OLE
_ PARAM # ole _ type _ detail -> [String] (45628.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
# ole _ respond _ to?(name) -> bool (45610.0) -
指定したメソッドをオブジェクトがサポートしているか調べます。
...ド名を文字列またはシンボルで指定します。
@return nameで指定したメソッドをオブジェクトが提供していれば真を返します。
excel = WIN32OLE.new('Excel.Application')
excel.ole_respond_to?(:quit) #=> true
excel.ole_respond_to?(:exit) #=> false... -
WIN32OLE
_ METHOD # helpfile -> String | nil (45610.0) -
ヘルプファイルのパス名を取得します。
...。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbooks')
method = WIN32OLE_METHOD.new(tobj, 'Add')
puts method.helpfile # => C:\...\VBAXL9.CHM
メソッドにヘルプファイルが関連付けられている場合、WIN32OLE.ole_show_helpにWIN32OLE_METHODオブ......ジェクトを与えてヘルプファイルを表示できます。
@see WIN32OLE.ole_show_help... -
WIN32OLE
_ PARAM # ole _ type -> String (45610.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
_ TYPE # helpfile -> String | nil (45610.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
# ole _ method _ help(method) -> WIN32OLE _ METHOD (36910.0) -
メソッド名を指定して対応するWIN32OLE_METHODオブジェクトを取得しま す。
...るWIN32OLE_METHODオブジェクトを取得しま
す。
OLEオートメーションの仕様により、メソッド名の大文字、小文字は区別されま
せん。
@param method メソッド情報を取り出す対象のメソッド名を文字列で指定します。
@return WIN32OLE_M......オブジェクト。
@raise WIN32OLERuntimeError 指定したメソッド名が未定義あるいは型情報ラ
イブラリ(TypeLib)が提供されていない場合など
に発生します。
excel = WIN32OLE.new('Excel.Application')... -
WIN32OLE
_ TYPE # variables -> [WIN32OLE _ VARIABLE] (36910.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
_ TYPELIB # ole _ classes -> [WIN32OLE _ TYPE] (36910.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
_ METHOD # return _ type _ detail -> [String] (36628.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
_ TYPE # helpstring -> String | nil (36628.0) -
型のドキュメント文字列を取得します。
...メント文字列を取得します。
@return ドキュメント文字列を返します。未定義の場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Internet Controls', 'IWebBrowser')
p tobj.helpstring # => "Web Browser interface"
ドキュメント文字列は、コ... -
WIN32OLE
_ TYPE # src _ type -> String | nil (36628.0) -
selfが他の型の別名ならば、元の型名を取得します。
...ます。
@return selfが別名ならば元の型名を文字列で返します。別名でなければnilを
返します。
tobj = WIN32OLE_TYPE.new('Microsoft Office 14.0 Object Library', 'MsoRGBType')
p tobj.src_type # => "I4"
この例は、OfficeのMsoRGBType型は符号付... -
WIN32OLE
_ METHOD # helpcontext -> Integer | nil (36610.0) -
メソッドのヘルプコンテキストを取得します。
...j = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbooks')
method = WIN32OLE_METHOD.new(tobj, 'Add')
puts method.helpcontext # => 65717
WIN32OLE_METHODオブジェクトを引数として、WIN32OLE.ole_show_helpで
ヘルプファイルを表示する場合には、WIN32OLEが......内部で当メソッドを呼び出し
ます。
@see WIN32OLE.ole_show_help... -
WIN32OLE
_ METHOD # helpstring -> String | nil (36610.0) -
メソッドのヘルプ文字列を取得します。
...明する文字列です。
@return ヘルプ文字列を返します。未定義ならばnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Internet Controls', 'IWebBrowser')
method = WIN32OLE_METHOD.new(tobj, 'Navigate')
puts method.helpstring # => Navigates to a URL or file.... -
WIN32OLE
_ PARAM # optional? -> bool (36610.0) -
パラメータがオプションかどうかを取得します。
...@return パラメータがオプション(省略可能)であれば真を返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 9.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
param1 = method.params[0]
puts "#{param1.name} #{param1.optional?}" # =>... -
WIN32OLE
_ TYPE # helpcontext -> Integer | nil (36610.0) -
この型に関連するヘルプファイルのトピックID(ヘルプコンテキスト)を取得 します。
...。
@return 型に関連するヘルプコンテキストを整数で返します。ヘルプコンテキ
ストが登録されていない場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
puts tobj.helpcontext # => 131185... -
WIN32OLE
_ TYPE # ole _ methods -> [WIN32OLE _ METHOD] (36610.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 # typekind -> Integer (36328.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 # visible? -> bool (36328.0) -
この型が公開されているかどうかを照会します。
...この型が公開されているかどうかを照会します。
@return 公開されていれば真を返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
p tobj.visible? # => true... -
WIN32OLE
_ TYPE # inspect -> String (36310.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
_ TYPELIB # visible? -> bool (36310.0) -
TypeLibの情報が公開情報かどうかを照会します。
...とみなして偽を返します。
@return TypeLibが公開可能であれば真を返します。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。
tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.visible? # => true... -
WIN32OLE
_ METHOD # params -> [WIN32OLE _ PARAM] (27928.0) -
メソッドのパラメータ情報を取得します。
...パラメータをWIN32OLE_PARAMの配列として返します。配
列の最初の要素が最左端のパラメータに対応します。
@return WIN32OLE_PARAMの配列。無引数のメソッドであれば要素数0の配
列を返します。
tobj = WIN32OLE_TYPE.new('Microsoft......Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
p method.params # => [Filename, FileFormat, Password, WriteResPassword,
ReadOnlyRecommended, CreateBackup, AccessMode,
ConflictResolution, AddToMru, TextCodepa... -
WIN32OLE
_ TYPE # default _ event _ sources -> [WIN32OLE _ TYPE] (27628.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 # progid -> String | nil (27628.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
# setproperty(name , args . . . , val) -> () (27610.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) -> () (27610.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
_ METHOD # size _ opt _ params -> Integer | nil (27610.0) -
オプションパラメータ数を取得します。
...パラメータ数を整数で返します。メソッドの詳細情報を取
得できない場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
puts method.size_opt_params # => 5... -
WIN32OLE
_ METHOD # size _ params -> Integer | nil (27610.0) -
パラメータ数を取得します。
...パラメータ数を整数で返します。メソッドの詳細情報を取得できない
場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
puts method.size_params # => 12... -
WIN32OLE
_ PARAM # input? -> bool (27610.0) -
パラメータがクライアントからサーバへ与えるものかを判定します。
...OLEオートメーションのパラメータは、in(クライアントからサーバへ与える。
WIN32OLE_PARAM#input?が真)、out(サーバがクライアントへ与える。
WIN32OLE_PARAM#output?が真)および、inout(クライアントからサーバ
へ与え、サーバがク......ます。
@return メソッドの方向属性がinまたはinoutならば真を返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 9.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
param1 = method.params[0]
puts param1.input? # => true
@see http://msd... -
WIN32OLE
_ PARAM # output? -> bool (27610.0) -
パラメータがクライアントからの結果を受け取るためのものかを判定します。
...OLEオートメーションのパラメータは、in(クライアントからサーバへ与える。
WIN32OLE_PARAM#input?が真)、out(サーバがクライアントへ与える。
WIN32OLE_PARAM#output?が真)および、inout(クライアントからサーバ
へ与え、サーバがク......す。
@return メソッドの方向属性がoutまたはinoutならば真を返します。
tobj = WIN32OLE_TYPE.new('Microsoft Internet Controls', 'DWebBrowserEvents')
method = WIN32OLE_METHOD.new(tobj, 'NewWindow')
method.params.each do |param|
puts "#{param.name} #{param.output?}... -
WIN32OLE
# _ getproperty(dispid , args , types) -> object (27310.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) -> () (27310.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
_ METHOD # dispid -> Integer (27310.0) -
メソッドのディスパッチID(DISPID)を取得します。
...す。WIN32OLEでは、
WIN32OLE#_invokeなどのメソッドで、呼び出すサーバのメソッドを指定
するのに利用します。
@return メソッドのDISPIDを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbooks')
method = WIN32OLE_METHO......D.new(tobj, 'Add')
puts method.dispid # => 181
@see WIN32OLE#_invoke, WIN32OLE#_getproperty,
WIN32OLE#_setproperty... -
WIN32OLE
_ METHOD # return _ type -> String (27310.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 _ vtype -> Integer (27310.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 # default -> object | nil (27310.0) -
パラメータを指定しなかった場合の既定値を取得します。
...指定しなかった場合の既定値。必須パラメータならばnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 9.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
method.params.each do |param|
if param.default
puts "#{param.nam... -
WIN32OLE
_ PARAM # retval? -> bool (27310.0) -
パラメータが戻り値かどうかを判定します。
...ます。
OLEオートメーションの規定では、メソッドの戻り値は引数リストの最右端のパ
ラメータをout属性(WIN32OLE_PARAM#output?が真)とすることで実現し
ます。ただし、そのパラメータをOLEオートメーション呼び出しを記述す......ータが戻り値として扱われる場合に真を返します。
tobj = WIN32OLE_TYPE.new('DirectX 7 for Visual Basic Type Library',
'DirectPlayLobbyConnection')
method = WIN32OLE_METHOD.new(tobj, 'GetPlayerShortName')
param = method.params[0]
puts "#{pa... -
WIN32OLE
_ TYPELIB # library _ name -> String (27310.0) -
TypeLibのヘルプファイル用ドキュメント文字列からTypeLibの名前を取得します。
...名前を取得します。
@return TypeLibの名前を文字列で返します。
@raise WIN32OLERuntimeError ドキュメント文字列が取得できなかった場合に通知します。
tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
tlib.library_name # => Excel... -
WIN32OLE
_ TYPELIB # path -> String (27310.0) -
TypeLibのパス名を取得します。
...、Windowsのパス名形式(ディレクトリ区切りは「\」)
です。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。
tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.path # => 'C:\...\EXCEL.EXE'
Typ... -
WIN32OLE
_ VARIANT # vartype -> Integer (27310.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 # value=(val) -> () (18328.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#[]=を利用してください。... -
WIN32OLE
_ TYPE # guid -> String | nil (18310.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
_ TYPELIB # version -> Float (18310.0) -
TypeLibのバージョン番号を取得します。
...号、小数点
数部にマイナーバージョン番号を設定したFloatで返します。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。
tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.version # => 1.7... -
WIN32OLE
_ TYPE # major _ version -> Integer (18028.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 (18028.0) -
型のマイナーバージョン番号を取得します。
...取得します。
@return 型のマイナーバージョン番号を整数で返します。
@raise WIN32OLERuntimeError 型属性の読み取りに失敗すると通知します。
tobj = WIN32OLE_TYPE.new('Microsoft Word 14.0 Object Library', 'Documents')
p tobj.minor_version # => 5... -
WIN32OLE
_ TYPE # name -> String (18028.0) -
selfの型名を取得します。
...selfの型名を取得します。
@return selfの型名を文字列で返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
p tobj.name # => "Application"... -
WIN32OLE
_ TYPE # to _ s -> String (18028.0) -
selfの型名を取得します。
...selfの型名を取得します。
@return selfの型名を文字列で返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
p tobj.name # => "Application"... -
WIN32OLE
_ PARAM # name -> String (18010.0) -
パラメータ名を取得します。
...ータ名を返します。名前付き引数形式でメソッドを呼び出すときに指定します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 9.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
param1 = method.params[0]
puts param1.name # => Filename... -
WIN32OLE
_ PARAM # to _ s -> String (18010.0) -
パラメータ名を取得します。
...ータ名を返します。名前付き引数形式でメソッドを呼び出すときに指定します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 9.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
param1 = method.params[0]
puts param1.name # => Filename... -
WIN32OLE
_ TYPELIB # guid -> String (18010.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 (18010.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 (18010.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 (18010.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 # to _ s -> String (18010.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
# _ invoke(dispid , args , types) -> object | nil (9610.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
_ VARIANT # []=(i . . . , val) -> object (9328.0) -
配列型のWIN32OLE_VARIANTの要素を設定します。
...配列型のWIN32OLE_VARIANTの要素を設定します。
selfは、WIN32OLE_VARIANT.arrayまたは引数に配列を指定して
WIN32OLE_VARIANT.newで作成したインスタンスの必要があります。
@param i 各次元の0からのインデックスを「,」で区切って次元数分......ンオブジェクト(WIN32OLEオブジェクト)に変換します。
@return 引数で指定したインデックスの要素を返します。
@raise ArgError 引数の数が次元数と一致していません。
@raise WIN32OLERuntimeError selfが配列型のWIN32OLE_VARIANTではありま......が0未満または要素数
以上を指定しています。
obj = WIN32OLE_VARIANT.new([[1,2,3],[4,5,6]])
obj[0,0] = 7
obj[1,0] = 8
p obj.value # => [[7,2,3], [8,5,6]]
obj[2,0] = 9 # => WIN32OLERuntimeError
obj[0, -1] = 9 # => WIN32OLERuntimeError... -
WIN32OLE
_ VARIANT # [](i . . . ) -> object (9082.0) -
配列型のWIN32OLE_VARIANTの要素を取得します。
...配列型のWIN32OLE_VARIANTの要素を取得します。
selfは、WIN32OLE_VARIANT.arrayまたは引数に配列を指定して
WIN32OLE_VARIANT.newで作成したインスタンスの必要があります。
@param i 各次元の0からのインデックスを「,」で区切って次元数分......ていません。
@raise WIN32OLERuntimeError selfが配列型のWIN32OLE_VARIANTではありませ
ん。あるいはインデックスが0未満または要素数
以上を指定しています。
obj = WIN32OLE_VARIANT.new([[1,2,3],[4,......5,6]])
p obj[0,0] # => 1
p obj[1,0] # => 4
p obj[2,0] # => WIN32OLERuntimeError
p obj[0, -1] # => WIN32OLERuntimeError...