別のキーワード
種類
- インスタンスメソッド (41)
- クラス (3)
- 特異メソッド (3)
クラス
- WIN32OLE (12)
-
WIN32OLE
_ EVENT (1) -
WIN32OLE
_ METHOD (19) -
WIN32OLE
_ PARAM (10) -
WIN32OLE
_ TYPE (2)
キーワード
-
WIN32OLE
_ METHOD (1) -
WIN32OLE
_ PARAM (1) -
WIN32OLE
_ VARIABLE (1) -
_ getproperty (1) -
_ invoke (1) -
_ setproperty (1) - default (1)
-
default
_ event _ sources (1) - dispid (1)
- event? (1)
-
event
_ interface (1) - handler= (1)
- helpcontext (1)
- helpfile (1)
- helpstring (1)
- input? (1)
- invkind (1)
-
invoke
_ kind (1) -
method
_ missing (1) - name (2)
- new (2)
-
offset
_ vtbl (1) -
ole
_ activex _ initialize (1) -
ole
_ func _ methods (1) -
ole
_ get _ methods (1) -
ole
_ method (1) -
ole
_ method _ help (1) -
ole
_ methods (2) -
ole
_ put _ methods (1) -
ole
_ show _ help (1) -
ole
_ type (1) -
ole
_ type _ detail (1) - optional? (1)
- output? (1)
- params (1)
-
return
_ type (1) -
return
_ type _ detail (1) -
return
_ vtype (1) - retval? (1)
-
size
_ opt _ params (1) -
size
_ params (1) -
to
_ s (2) - visible? (1)
検索結果
先頭5件
-
WIN32OLE
# ole _ method(method) -> WIN32OLE _ METHOD (19045.0) -
メソッド名を指定して対応するWIN32OLE_METHODオブジェクトを取得しま す。
...るWIN32OLE_METHODオブジェクトを取得しま
す。
OLEオートメーションの仕様により、メソッド名の大文字、小文字は区別されま
せん。
@param method メソッド情報を取り出す対象のメソッド名を文字列で指定します。
@return WIN32OLE_M......オブジェクト。
@raise WIN32OLERuntimeError 指定したメソッド名が未定義あるいは型情報ラ
イブラリ(TypeLib)が提供されていない場合など
に発生します。
excel = WIN32OLE.new('Excel.Application')... -
WIN32OLE
# ole _ method _ help(method) -> WIN32OLE _ METHOD (19045.0) -
メソッド名を指定して対応するWIN32OLE_METHODオブジェクトを取得しま す。
...るWIN32OLE_METHODオブジェクトを取得しま
す。
OLEオートメーションの仕様により、メソッド名の大文字、小文字は区別されま
せん。
@param method メソッド情報を取り出す対象のメソッド名を文字列で指定します。
@return WIN32OLE_M......オブジェクト。
@raise WIN32OLERuntimeError 指定したメソッド名が未定義あるいは型情報ラ
イブラリ(TypeLib)が提供されていない場合など
に発生します。
excel = WIN32OLE.new('Excel.Application')... -
WIN32OLE
# ole _ func _ methods -> [WIN32OLE _ METHOD] (18694.0) -
オブジェクトのファンクション情報をWIN32OLE_METHODの配列として返し ます。
...をWIN32OLE_METHODの配列として返し
ます。
ole_func_methodsメソッドは、OLEオートメーションサーバのメソッドのうちファ
ンクション(何らかの機能的な操作)に属するものをWIN32OLE_METHODの
配列として返します。
@return WIN32OLE_METHO......Dの配列。
@raise WIN32OLERuntimeError オートメーションサーバの呼び出しに失敗しました。
型情報ライブラリ(TypeLib)が提供されていない場合などに発生します。
excel = WIN32OLE.new('Excel.Application')
excel.visible......= true
excel.ole_func_methods.each do |fun|
if fun.name.upcase == 'QUIT'
excel._invoke(fun.dispid, [], [])
break
end
end
@see WIN32OLE#ole_methods, WIN32OLE#ole_get_methods,
WIN32OLE#ole_put_methods... -
WIN32OLE
# ole _ get _ methods -> [WIN32OLE _ METHOD] (18694.0) -
オブジェクトの参照可能プロパティ情報をWIN32OLE_METHODの配列として 返します。
...報をWIN32OLE_METHODの配列として
返します。
ole_get_methodsメソッドは、OLEオートメーションサーバのメソッドのうち読
み取り可能なプロパティをWIN32OLE_METHODの配列として返します。
@return WIN32OLE_METHODの配列。
@raise WIN32OLERuntimeEr......xcel = WIN32OLE.new('Excel.Application')
excel.ole_get_methods.each do |prop|
begin
puts "#{prop.name}=#{excel._getproperty(prop.dispid, [], [])}"
rescue WIN32OLERuntimeError
puts "can't read #{prop.name} property"
end
end
@see WIN32OLE#ole_methods, WIN32OLE#ole_f......unc_methods,
WIN32OLE#ole_put_methods... -
WIN32OLE
# ole _ methods -> [WIN32OLE _ METHOD] (18694.0) -
オブジェクトのメソッド情報をWIN32OLE_METHODの配列として返します。
...メソッド情報をWIN32OLE_METHODの配列として返します。
ole_methodsメソッドは、OLEオートメーションサーバが提供するすべてのメソッ
ドをWIN32OLE_METHODの配列として返します。
@return WIN32OLE_METHODの配列。
@raise WIN32OLERuntimeError オー......の呼び出しに失敗しました。
型情報ライブラリ(TypeLib)が提供されていない場合などに発生します。
excel = WIN32OLE.new('Excel.Application')
methods = excel.ole_methods
@see WIN32OLE#ole_func_methods, WIN32OLE#ole_put_methods... -
WIN32OLE
# ole _ put _ methods -> [WIN32OLE _ METHOD] (18694.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
_ TYPE # ole _ methods -> [WIN32OLE _ METHOD] (18646.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
# method _ missing(id , *args) -> object | nil (18346.0) -
WIN32OLE#invokeメソッドを実行します。
...WIN32OLE#invokeメソッドを実行します。
WIN32OLEのインスタンスに対して、このリファレンスに明記されていないメソッ
ドを呼び出した場合、OLEオートメーションサーバのメソッド(プロパティ)呼
び出しと解釈します。
@param......有効なシンボルではありません。
@raise WIN32OLERuntimeError オートメーションサーバの呼び出しに失敗しました。
理由はメッセージのHRESULTを調べてください。
WIN32OLEはOLEオートメーションオブジェクトのメ......ソッド呼び出しを
method_missingを利用して実行します。このためWIN32OLEを継承するクラスを
作成してmethod_missingをオーバーライドする場合、superを呼び出してくださ
い。
@see WIN32OLE#invoke... -
WIN32OLE
_ METHOD (18169.0) -
OLEオートメーションサーバが持つメソッドの情報を提供します。
...提供します。
WIN32OLE_METHODは、WIN32OLE#ole_methodsなどの呼び出しによって返さ
れるオブジェクトで、OLEオートメーションサーバのメソッドの情報(メタデー
タ)を保持します。
=== サンプルコード
excel = WIN32OLE.new('Excel.Applic.......name}(#{
method.params.map {|p| "#{p.ole_type} #{p.name}"}.join(', ')
}) : #{method.helpstring}
SIGNATURE
end
end
@see WIN32OLE#ole_methods, WIN32OLE#ole_func_methods, WIN32OLE#ole_get_methods, WIN32OLE#ole_put_methods, WIN32OLE#ole_method, WIN32OLE#ole_method_help, WIN32OLE_PARAM... -
WIN32OLE
_ METHOD . new(ole _ type , method) -> WIN32OLE _ METHOD (9823.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
_ METHOD # invoke _ kind -> String (9097.0) -
メソッドの種類を文字列で取得します。
...字列を返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbooks')
method = WIN32OLE_METHOD.new(tobj, 'Add')
puts method.invoke_kind # => "FUNC"
返送値は以下のいずれかとなります。値の意味は
WIN32OLE_METHOD#invkindの説明を参照......ています。
: PROPERTYPUT
INVOKE_PROPERTYPUTが設定されています。
: PROPERTYPUTREF
INVOKE_PROPERTYPUTREFが設定されています。
: FUNC
INVOKE_FUNCが設定されています。
: UNKNOWN
上記のいずれにも当てはまりません。
@see WIN32OLE_METHOD#invkind... -
WIN32OLE
_ METHOD # helpcontext -> Integer | nil (9079.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 # helpfile -> String | nil (9079.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
_ METHOD # return _ type _ detail -> [String] (9079.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 # dispid -> Integer (9061.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 # event? -> bool (9061.0) -
メソッドがイベントかどうかを取得します。
...を受けるために実装するメソッドです。
@return メソッドがイベントであれば真。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SheetActivate')
puts method.event? # => true
@see WIN32OLE_EVENT... -
WIN32OLE
_ METHOD # event _ interface -> String | nil (9061.0) -
メソッドがイベントの場合、イベントのインターフェイス名を取得します。
...ベントのインターフェイス名を返し
ます。イベントでなければnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SheetActivate')
puts method.event_interface # => WorkbookEvents... -
WIN32OLE
_ METHOD # helpstring -> String | nil (9061.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
_ METHOD # invkind -> Integer (9061.0) -
メソッドの種類を示すINVOKEKIND列挙値を取得します。
...きかを指定した属性値で
す。
@return メソッドのINVOKEKINDを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbooks')
method = WIN32OLE_METHOD.new(tobj, 'Add')
puts method.invkind # => 1
INVOKEKIND列挙値は以下の通りです。メソ... -
WIN32OLE
_ METHOD # name -> String (9061.0) -
メソッド名を取得します。
...メソッド名を取得します。
@return メソッド名を文字列で返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
puts method.name # => SaveAs... -
WIN32OLE
_ METHOD # offset _ vtbl -> Integer (9061.0) -
このメソッドのVTBLのオフセットを取得します。
...出すために利用する関数ポインタのテーブルです。
@return メソッドのVTBL上のオフセットを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbooks')
method = WIN32OLE_METHOD.new(tobj, 'Add')
puts method.offset_vtbl # => 40... -
WIN32OLE
_ METHOD # params -> [WIN32OLE _ PARAM] (9061.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
_ METHOD # return _ type -> String (9061.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 (9061.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
_ METHOD # size _ opt _ params -> Integer | nil (9061.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 (9061.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
_ METHOD # to _ s -> String (9061.0) -
メソッド名を取得します。
...メソッド名を取得します。
@return メソッド名を文字列で返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
puts method.name # => SaveAs... -
WIN32OLE
_ METHOD # visible? -> bool (9061.0) -
このメソッドがクライアントに対して公開されているか(可視性を持つか)ど うかを返します。
...て公開されているか(可視性を持つか)ど
うかを返します。
@return メソッドが公開されていれば真。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbooks')
method = WIN32OLE_METHOD.new(tobj, 'Add')
puts method.visible? # => true... -
WIN32OLE
_ PARAM . new(ole _ method , index) -> WIN32OLE _ PARAM (454.0) -
メソッドとパラメータ位置を指定してWIN32OLE_PARAMのインスタンスを作成します。
...メソッドとパラメータ位置を指定してWIN32OLE_PARAMのインスタンスを作成します。
アプリケーションプログラムでは、WIN32OLE_PARAMオブジェクトをnewメソッド
で生成するよりも、WIN32OLE_METHOD#paramsを参照するほうが簡単です。
@......ラメータがWIN32OLE_METHODのインスタンスではありません。
@raise IndexError indexパラメータが1からパラメータの数の範囲にありません。
@raise RuntimeError 該当メソッドのメタデータが取得できません。
excel = WIN32OLE.new('Excel.Applica......tion')
method = excel.ole_method('Run')
param1 = WIN32OLE_PARAM.new(method, 1)
puts "#{param1.ole_type} #{param1.name}"... -
WIN32OLE
_ PARAM (97.0) -
OLEオートメーションサーバが持つメソッドのパラメータ情報を提供します。
...メータ情報を提供します。
WIN32OLE_PARAMは、WIN32OLE_METHODのパラメータのメタデータを保持し
ます。
=== サンプルコード
tobj = WIN32OLE_TYPE.new('Microsoft Excel 9.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
param......1 = method.params[0]
puts param1.name # => Filename
@see WIN32OLE_METHOD... -
WIN32OLE
# _ invoke(dispid , args , types) -> object | nil (61.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
_ PARAM # default -> object | nil (61.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 # input? -> bool (61.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 # name -> String (61.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 # ole _ type -> String (61.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] (61.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
_ PARAM # optional? -> bool (61.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
_ PARAM # output? -> bool (61.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
_ PARAM # retval? -> bool (61.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
_ PARAM # to _ s -> String (61.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
. ole _ show _ help(obj , helpcontext = nil) -> () (43.0) -
WIN32OLEオブジェクトのヘルプファイルを表示します。
...
WIN32OLEオブジェクトのヘルプファイルを表示します。
Windows標準のヘルプ表示コンポーネントのHHCtrl.OCXを利用して、オブジェク
トに関連付けられたヘルプファイル(chmファイル)を表示します。
また、chmファイルのフル......aram obj WIN32OLE_TYPEオブジェクトまたはWIN32OLE_METHODオ
ブジェクト。直接ヘルプファイルのフルパス名を指定することも可
能です。
@param helpcontext obj引数にWIN32OLE_TYPEオブジェクトまたは
WIN32OLE_METHOD......ファイル
がインストールされていない場合 (failed to open
help file `ファイル名') に通知します。
excel = WIN32OLE.new('Excel.Application')
typeobj = excel.ole_obj_help
WIN32OLE.ole_show_help(typeobj) if typeobj.helpfile... -
WIN32OLE
_ EVENT # handler=(obj) -> () (43.0) -
イベント処理を実行するオブジェクトを登録します。
...ie = WIN32OLE.new('InternetExplorer.Application.1')
event = WIN32OLE_EVENT.new(ie, 'DWebBrowserEvents2')
event.handler = IeHandler.new
ie.Navigate2 'http://www.ruby-lang.org/ja/'
loop do
break if event.handler.completed
WIN32OLE_EVENT.message_loop
end
ie.Quit
WIN32OLE_EVENT#... -
WIN32OLE
_ TYPE # default _ event _ sources -> [WIN32OLE _ TYPE] (43.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
# _ getproperty(dispid , args , types) -> object (25.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) -> () (25.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 _ activex _ initialize -> nil (25.0) -
ActiveXコントロール用の初期化を行います。
...出しがすべてエラーとなります。
@raise WIN32OLERuntimeError オブジェクトがActiveXコントロールの永続化イ
ンターフェイスを持たない場合に通知します。
obj = WIN32OLE.new("ProgID_or_GUID_of_ActiveX_Control")
obj.ole_......でないかを簡単に区別する方法はありません。
そのため、とりあえず普通にメソッドを呼び出し、その結果
WIN32OLERuntimeErrorが通知され、メッセージにHRESULT 0x8000ffffと示され
ている場合にのみ、オブジェクト生成直後に当メ... -
WIN32OLE
_ VARIABLE (25.0) -
OLEオートメーションの変数情報をRubyで参照するためのクラスです。
...す。
OLEオートメーションサーバは、定数(WIN32OLE.const_load)、メソッ
ド/プロパティ(WIN32OLE_METHOD)、イベント(WIN32OLE_EVENT)
のほかに変数をクライアントへ提供できます。WIN32OLE_VARIABLEクラスは、サー
バが提供する変数の......enumのメンバは定数として利用で
きます。
WIN32OLE_VARIABLEのオブジェクトは、WIN32OLE_TYPE#variablesメソッ
ドを利用して取得します。
=== サンプルコード
require 'win32ole'
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetTy......pe')
variables = tobj.variables
variables.each do |variable|
puts "#{variable.name}=#{variable.value}"
end
実行結果は以下となります。
xlChart=-4109
xlDialogSheet=-4116
xlExcel4IntlMacroSheet=4
xlExcel4MacroSheet=3
xlWorksheet=-4167
@see WIN32OLE_TYPE#variables...