種類
- インスタンスメソッド (9)
- 特異メソッド (7)
- 定数 (4)
- クラス (3)
- モジュール (1)
クラス
- WIN32OLE (6)
-
WIN32OLE
_ EVENT (2) -
WIN32OLE
_ METHOD (1) -
WIN32OLE
_ TYPE (4) -
WIN32OLE
_ TYPELIB (1) -
WIN32OLE
_ VARIANT (3)
モジュール
キーワード
- ARGV (1)
- VARIANT (1)
-
VT
_ BSTR (1) -
VT
_ DATE (1) -
VT
_ DISPATCH (1) -
WIN32OLE
_ EVENT (1) -
WIN32OLE
_ TYPE (1) -
WIN32OLE
_ VARIANT (1) - array (1)
- codepage (1)
-
const
_ load (1) -
default
_ event _ sources (1) - handler= (1)
- helpfile (1)
- invkind (1)
- new (1)
-
ole
_ classes (1) -
ole
_ query _ interface (1) - path (1)
- setproperty (2)
- typelibs (1)
- value (1)
検索結果
先頭5件
-
WIN32OLE
_ TYPE # default _ event _ sources -> [WIN32OLE _ TYPE] (27715.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 . typelibs -> [String] (27361.0) -
システムに登録されているすべてのTypeLibのドキュメント文字列を取得します。
...メント文字列の配
列を返します。
Ruby-1.9.1からは、すべてのTypeLibのドキュメント文字列を取得するには、
WIN32OLE_TYPELIBオブジェクトを利用して、以下のように記述してくだ
さい。
WIN32OLE_TYPELIB.typelibs.map {|t| t.name}... -
WIN32OLE
# setproperty(name , args . . . , val) -> () (18361.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) -> () (18361.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
# ole _ query _ interface(iid) -> WIN32OLE (18343.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
. const _ load(ole , mod = WIN32OLE) -> () (18325.0) -
OLEオートメーションサーバが保持する定数を読み込み、指定されたモジュール に組み込みます。
...み込む対象のWIN32OLEオブジェクトまたはタイプライブラ
リ名(文字列)を指定します。
@param mod 定数を定義する対象のモジュールを指定します。省略時は
WIN32OLEに組み込まれます。
@raise WIN32OLERuntimeError オ......規約に準じて、vbConstantsの
ように小文字で始まります。しかし、Rubyの定数は大文字で開始する規則のた
め、WIN32OLEによってVbConstantsのように自動的に先頭が大文字化されます。
また、先頭が英字で始まらない定数について......end
excel = WIN32OLE.new('Excel.Application')
WIN32OLE.const_load(excel, EXCEL_CONST)
puts EXCEL_CONST::XlTop # => -4160
puts EXCEL_CONST::CONSTANTS['_xlDialogChartSourceData'] # => 541
モジュール名を省略した例
WIN32OLE.const_load(excel)
puts WIN32OLE::XlTop # => -4... -
WIN32OLE
:: VARIANT :: VT _ BSTR -> Integer (18325.0) -
文字列(BSTR)を示します(8)。
...文字列(BSTR)を示します(8)。
OLEオートメーションのBSTRはUnicodeで表現された長さ付き文字列です。Ruby
のStringとBSTRの相互変換は、WIN32OLEがWIN32OLE#codepageに基づいて
自動的に行います。... -
WIN32OLE
:: VARIANT :: VT _ DATE -> Integer (18325.0) -
日付型(DATE)を示します(7)。
...日付型(DATE)を示します(7)。
OLEオートメーションのDATE型は、1899年12月30日0時00分からの日時を示す64
ビット浮動小数点数型です。
WIN32OLEは、RubyのTime型と自動的に変換します。... -
WIN32OLE
:: VARIANT :: VT _ DISPATCH -> Integer (18325.0) -
OLEオートメーションオブジェクトを示します(9)。
OLEオートメーションオブジェクトを示します(9)。
RubyのオブジェクトをOLEオートメーションサーバへ与える場合に利用します。 -
WIN32OLE
_ TYPELIB # path -> String (18325.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 (18055.0) -
OLEオートメーションの標準型のVARIANTオブジェクトをRubyで利用するための クラスです。
...報は、WIN32OLE_VARIANT#vartypeで取得できます。
* 値は、WIN32OLE_VARIANT#valueで取得できます。
OLEオートメーションのメソッド呼び出し規約では、引数はVARIANT型の配列と
して定義されています。
この規約に対して、WIN32OLEでは、VA......この場合、WIN32OLEの実装は正しく処理されません。
WIN32OLE_VARIANTオブジェクトを利用すると、このようなOLEオートメーション
サーバのメソッド呼び出しに対して、VARIANT型の値を引数配列に設定すること
をWIN32OLEへ指示でき......ます。
なお、WIN32OLE_VARIANTを利用する必要の有無は、呼び出し対象のOLEオートメー
ションサーバの仕様または実装に依存します。
=== サンプルコード
shell = WIN32OLE.new('Shell.Application')
folder = shell.NameSpace('C:\\Users\\Public\\Doc... -
WIN32OLE
_ EVENT (18043.0) -
OLEオートメーションサーバからのイベント通知を制御するクラスです。
...ベント」と呼びます。WIN32OLE_EVENTを利用
すると、ブロックの形式でイベントを受け取るメソッドをサーバへ登録できま
す。
=== サンプルコード
ie = WIN32OLE.new('InternetExplorer.Application.1')
event = WIN32OLE_EVENT.new(ie, 'DWebBrowserEvents......nt.getElementsByTagName('a').each do |e|
puts "#{e.innerHTML}=#{e.href}" #=> ダウンロード=http://www.ruby-lang.org/ja/downloads/ など
end
disp.quit
b = true
end
ie.Navigate2 'http://www.ruby-lang.org/ja/'
loop do
break if b
WIN32OLE_EVENT.message_loop
end... -
WIN32OLE
:: VARIANT (18025.0) -
OLEオートメーション型を指定するための定数を定義したモジュールです。
...OLEオートメーション型を指定するための定数を定義したモジュールです。
WIN32OLE::VARIANTは、WIN32OLE_VARIANTオブジェクトの作成時や、
WIN32OLE#_invokeなどのメソッド呼び出し時に、ユーザがRubyのオブジェ
クトの変換方法を指定す... -
WIN32OLE
_ TYPE (18025.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
_ VARIANT # value -> object (9373.0) -
値に対応するRubyオブジェクトを取得します。
...値に対応するRubyオブジェクトを取得します。
@return 値に対応するRubyのオブジェクトを返します。
obj = WIN32OLE_VARIANT.new(1, WIN32OLE::VARIANT::VT_BSTR)
obj.value # => "1" (VT_BSTRを指定して生成したので、Stringオブジェクトとなる)... -
WIN32OLE
_ VARIANT . new(val , vartype = nil) -> WIN32OLE _ VARIANT (9343.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... -
WIN32OLE
_ METHOD # invkind -> Integer (9325.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
_ TYPE # helpfile -> String | nil (9325.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 . ole _ classes(libname) -> [WIN32OLE _ TYPE] (9325.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
_ VARIANT . array(dims , vt) -> WIN32OLE _ VARIANT (9325.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
_ EVENT . message _ loop -> () (9061.0) -
Windowsのメッセージポンプを実行します。
...ト処理は
Windowsメッセージを読み取ってディスパッチすることで通知されます。
ie = WIN32OLE.new('InternetExplorer.Application.1')
event = WIN32OLE_EVENT.new(ie, 'DWebBrowserEvents2')
b = false
event.on_event('DocumentComplete') do |disp, uri|
disp.document.......by-lang.org/ja/downloads/ など
end
disp.quit
b = true
end
ie.Navigate2 'http://www.ruby-lang.org/ja/'
loop do
break if b
WIN32OLE_EVENT.message_loop
end
なお、メソッド名はloopですが、呼び出し時および既にキューイングされたメッ
セージ... -
WIN32OLE
_ EVENT # handler=(obj) -> () (9025.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
:: ARGV -> [object] (361.0) -
直前のメソッド呼び出しの引数を格納した配列です。
...p x # => 10 …… 呼び出しによって影響を受けない
p WIN32OLE::ARGV # => ['*', 110, 11] …… 結果はARGVの対応する引数に反映される
obj.Accm '+', 10, 11
p WIN32OLE::ARGV # => ['+', 21, 11]
直前のメソッド呼び出しが例外となった......場合、ARGVの設定内容は呼び出し前の
状態が保たれます。つまり、WIN32OLE自身がARGVの内容を消去するのは、メソッ
ド呼び出しに成功した場合のみです。このため最後のメソッド呼び出しが引数
にオブジェクトを返すタイプ......VB (OLE Automation server)
Public Sub GetInterface(ByRef obj)
Set Obj = New OleObject
End Sub
# Ruby
obj.GetInterface nil # 引数の数を合わせるためダミー引数を指定
WIN32OLE::ARGV.clear # 通常は、後続のメソッド呼び出しによって消去される... -
WIN32OLE
. codepage -> Integer (325.0) -
WIN32OLEがOLEオートメーションのインターフェイスに利用するコードページを 取得します。
...
WIN32OLEがOLEオートメーションのインターフェイスに利用するコードページを
取得します。
OLEオートメーションに利用する文字列はUnicodeでエンコードします。
WIN32OLEはここで示されたコードページを利用してRubyのStringとUnic......するコード
ページが見つからない場合は、WIN32OLE::CP_ACPを利用します。
@return WIN32OLEがオートメーション呼び出しの文字列変換に利用するコード
ページを返します。
WIN32OLE.codepage # => 932 (日本語Windowsの既定値)...