種類
- インスタンスメソッド (76)
- 定数 (38)
- 特異メソッド (11)
- クラス (1)
クラス
- WIN32OLE (27)
-
WIN32OLE
_ EVENT (4) -
WIN32OLE
_ METHOD (16) -
WIN32OLE
_ PARAM (10) -
WIN32OLE
_ TYPE (18) -
WIN32OLE
_ TYPELIB (8) -
WIN32OLE
_ VARIABLE (8) -
WIN32OLE
_ VARIANT (10)
モジュール
-
WIN32OLE
:: VARIANT (24)
キーワード
- ARGV (1)
-
CP
_ ACP (1) -
CP
_ MACCP (1) -
CP
_ OEMCP (1) -
CP
_ SYMBOL (1) -
CP
_ THREAD _ ACP (1) -
CP
_ UTF7 (1) -
CP
_ UTF8 (1) - Empty (1)
-
LOCALE
_ SYSTEM _ DEFAULT (1) -
LOCALE
_ USER _ DEFAULT (1) - Nothing (1)
- Null (1)
- VERSION (1)
-
VT
_ ARRAY (1) -
VT
_ BOOL (1) -
VT
_ BSTR (1) -
VT
_ BYREF (1) -
VT
_ CY (1) -
VT
_ DATE (1) -
VT
_ DISPATCH (1) -
VT
_ EMPTY (1) -
VT
_ ERROR (1) -
VT
_ I1 (1) -
VT
_ I2 (1) -
VT
_ I4 (1) -
VT
_ INT (1) -
VT
_ NULL (1) -
VT
_ PTR (1) -
VT
_ R4 (1) -
VT
_ R8 (1) -
VT
_ UI1 (1) -
VT
_ UI2 (1) -
VT
_ UI4 (1) -
VT
_ UINT (1) -
VT
_ UNKNOWN (1) -
VT
_ USERDEFINED (1) -
VT
_ VARIANT (1) - WIN32OLERuntimeError (1)
- [] (1)
- []= (1)
-
_ getproperty (1) -
_ invoke (1) -
_ setproperty (1) - array (1)
- codepage (1)
-
create
_ guid (1) - default (1)
-
default
_ event _ sources (1) - dispid (1)
-
event
_ interface (1) - guid (2)
- handler (1)
- handler= (1)
- helpcontext (2)
- helpfile (2)
- helpstring (2)
- input? (1)
- inspect (1)
- invkind (1)
- invoke (1)
-
invoke
_ kind (1) -
library
_ name (1) - locale (1)
-
major
_ version (2) -
method
_ missing (1) -
minor
_ version (2) - name (5)
- new (3)
-
offset
_ vtbl (1) -
ole
_ free (2) -
ole
_ query _ interface (1) -
ole
_ reference _ count (1) -
ole
_ respond _ to? (1) -
ole
_ type (3) -
ole
_ type _ detail (2) -
on
_ event (1) -
on
_ event _ with _ outargs (1) - optional? (1)
- output? (1)
- params (1)
- path (1)
- progid (1)
- progids (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 (5) - typekind (1)
- typelibs (1)
- value (2)
- value= (1)
-
variable
_ kind (1) - variables (1)
- varkind (1)
- vartype (1)
- version (1)
- visible? (1)
検索結果
先頭5件
-
WIN32OLE
. ole _ reference _ count(aWIN32OLE) -> Integer (36907.0) -
引数で指定したオブジェクトの現在の参照カウント値を返します。
...を返します。
このメソッドは主にWIN32OLEのデバッグおよびWIN32OLEを利用するミドルウェ
アの実装のために用意されています。このため、メソッドの内部動作は不定で
す。COMの仕様とWIN32OLEの内部処理に熟知していない場合......は使用しないでくだ
さい。
@param aWIN32OLE 参照カウント値を求めるWIN32OLEオブジェクト。
@return AddRef呼び出し後のReleaseの戻り値。COMの仕様上は現在のオブジェ
クトの参照カウント値を示します。... -
WIN32OLE
_ VARIABLE # variable _ kind -> String (27907.0) -
変数の種類(VARKIND)を取得します。
...得します。
この変数の種類を示す文字列を返します。
@return VARKINDに対応する文字列を返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
puts tobj.variables.map {|v| v.variable_kind}.uniq # => CONSTANT
返送値は......。構造体やユーザ定義体のフィールド。(0)
: STATIC
クラスの静的変数。(1)
: CONSTANT
定数。enumやモジュールのメンバ。(2)
: DISPATCH
変数アクセスにオートメーションを利用。旧型式のプロパティ。(3)
@see WIN32OLE_VARIABLE#varkind... -
WIN32OLE
:: VARIANT :: VT _ VARIANT -> Integer (27607.0) -
VARIANT型を示します(12)。
VARIANT型を示します(12)。 -
WIN32OLE
_ TYPE # default _ event _ sources -> [WIN32OLE _ TYPE] (19489.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 # variables -> [WIN32OLE _ VARIABLE] (18961.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
# ole _ query _ interface(iid) -> WIN32OLE (18931.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
:: VARIANT :: VT _ BSTR -> Integer (18907.0) -
文字列(BSTR)を示します(8)。
...文字列(BSTR)を示します(8)。
OLEオートメーションのBSTRはUnicodeで表現された長さ付き文字列です。Ruby
のStringとBSTRの相互変換は、WIN32OLEがWIN32OLE#codepageに基づいて
自動的に行います。... -
WIN32OLE
:: VARIANT :: VT _ PTR -> Integer (18907.0) -
ポインタ型を示します(26)。
ポインタ型を示します(26)。
VT_PTRは、VOID*に相当するため、OLEオートメーションでは利用できません。 -
WIN32OLE
_ EVENT # on _ event _ with _ outargs(event = nil) {|*args| . . . } -> () (18907.0) -
イベント通知を受けて結果を呼び出し元へ返すブロックを登録します。
...ッド名を指定します。引数を省略した場合は、すべて
のイベントを対象とするブロックの登録となります。
WIN32OLE_EVENT#on_eventと異なり、イベントのブロック変数に戻り値を
設定できます。
@param event イベント名を文字列か......配列の形式で受けてください。
@raise WIN32OLERuntimeError WIN32OLE_EVENT#unadviseによってイベン
トソースと切断済みです。
ie = WIN32OLE.new('InternetExplorer.Application')
ev = WIN32OLE_EVENT.new(ie, 'DWebBrowserEvents2')
ev.on_event... -
WIN32OLE
_ METHOD # helpstring -> String | nil (18907.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 # params -> [WIN32OLE _ PARAM] (18907.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 # helpstring -> String | nil (18907.0) -
型のドキュメント文字列を取得します。
...メント文字列を取得します。
@return ドキュメント文字列を返します。未定義の場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Internet Controls', 'IWebBrowser')
p tobj.helpstring # => "Web Browser interface"
ドキュメント文字列は、コ... -
WIN32OLE
. create _ guid -> String (18679.0) -
GUID(グローバル一意識別子:Global Unique Identifier)を生成します。
...ンターフェイス識別子(IID)など多数の
領域でWindows上のオブジェクトの識別に利用される128ビットの値です。
WIN32OLEが生成するGUIDは以下の形式によるGUIDの文字列表現です。なお00〜
FFはGUIDの先頭からのバイト位置を示しま......す。これはレジストリのキーとして
利用される形式です。
{33221100-5544-7766-8899-AABBCCDDEEFF}
@return GUIDの文字列表現を返します。
WIN32OLE.create_guid # => "{????????-????-????-????-????????????}"... -
WIN32OLE
:: VARIANT :: VT _ ERROR -> Integer (18625.0) -
HRESULTを示します(10)。
HRESULTを示します(10)。
HRESULTは、COMを含むWindowsのサービスがアプリケーションへ通知する統一的
なエラーコードです。
HRESULT: http://msdn.microsoft.com/en-us/library/cc704587(v=PROT.10).aspx -
WIN32OLE
_ EVENT # handler=(obj) -> () (18625.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
_ METHOD # return _ type _ detail -> [String] (18625.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
_ PARAM # retval? -> bool (18625.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
:: VARIANT :: VT _ R4 -> Integer (18610.0) -
単精度浮動小数点数を示します(4)。
単精度浮動小数点数を示します(4)。 -
WIN32OLE
:: VARIANT :: VT _ R8 -> Integer (18610.0) -
倍精度浮動小数点数を示します(5)。
倍精度浮動小数点数を示します(5)。 -
WIN32OLE
# _ getproperty(dispid , args , types) -> object (18607.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) -> () (18607.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 _ free -> () (18607.0) -
selfが参照するCOMオブジェクトを解放します。
...に対
する操作は行えません。
excel = WIN32OLE.new('Excel.Application')
excel.ole_free # オブジェクトの解放
excel.Quit #=> RuntimeError (failed to get Dispatch Interface)
通常は利用されなくなったWIN32OLEオブジェクトはGCのタイミングで自動......中で生成される子オブジェクトからの逆参照などがあるため、
WIN32OLEがIUnknown::Releaseを呼び出してもオブジェクトが解放されるとは限
りません。
excel = WIN32OLE.new('Excel.Application')
workbook = excel.Workbooks.Open('workbook.xls')
workbo......参照されているexcelオブジェクトは解
放されません。それに対して下の例では正しく解放されます。
excel = WIN32OLE.new('Excel.Application')
books = excel.Workbooks
workbook = books.Open('workbook.xls')
books.ole_free
workbook.Close(:SaveChanges => fal... -
WIN32OLE
# ole _ respond _ to?(name) -> bool (18607.0) -
指定したメソッドをオブジェクトがサポートしているか調べます。
...ド名を文字列またはシンボルで指定します。
@return nameで指定したメソッドをオブジェクトが提供していれば真を返します。
excel = WIN32OLE.new('Excel.Application')
excel.ole_respond_to?(:quit) #=> true
excel.ole_respond_to?(:exit) #=> false... -
WIN32OLE
# setproperty(name , args . . . , val) -> () (18607.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) -> () (18607.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 _ free(aWIN32OLE) -> Integer (18607.0) -
引数で指定したオブジェクトを解放します。
...解放します。
このメソッドは主にWIN32OLEのデバッグおよびWIN32OLEを利用するミドルウェ
アの実装のために用意されています。このため、メソッドの内部動作は不定で
す。COMの仕様とWIN32OLEの内部処理に熟知していない場合......は使用しないでくだ
さい。
@param aWIN32OLE 解放するWIN32OLEオブジェクト。
@return Releaseの戻り値。COMの仕様上は現在のオブジェクトの参照カウント
値を示します。... -
WIN32OLE
:: ARGV -> [object] (18607.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
:: CP _ THREAD _ ACP -> Integer (18607.0) -
現在実行中のスレッドの既定のコードページ(3)を示します。
現在実行中のスレッドの既定のコードページ(3)を示します。
Windowsのコードページはスレッド毎に異なる値を設定できます。 -
WIN32OLE
:: LOCALE _ USER _ DEFAULT -> Integer (18607.0) -
ユーザ既定のロケールを示すLCID(0x0400)です。
ユーザ既定のロケールを示すLCID(0x0400)です。 -
WIN32OLE
:: VARIANT :: VT _ ARRAY -> Integer (18607.0) -
配列(SafeArray)を示します(0x2000)。
配列(SafeArray)を示します(0x2000)。 -
WIN32OLE
:: VARIANT :: VT _ BYREF -> Integer (18607.0) -
参照を示します(0x4000)。
参照を示します(0x4000)。
VT_BYREFは型ではなく、参照を示す型属性です。OLEオートメーションサーバが
結果を引数に戻す場合、参照先の型を示す値と論理和を取るために利用します。 -
WIN32OLE
:: VARIANT :: VT _ USERDEFINED -> Integer (18607.0) -
ユーザ定義型を示します(29)。
ユーザ定義型を示します(29)。
OLEオートメーションでは利用できません。代わりにVT_I4を利用してください。 -
WIN32OLE
:: VERSION -> String (18607.0) -
Major.Minor.Patch形式のWIN32OLEのバージョン番号を示す文字列です。
...Major.Minor.Patch形式のWIN32OLEのバージョン番号を示す文字列です。... -
WIN32OLE
_ EVENT # handler -> object (18607.0) -
WIN32OLE_EVENT#handler=メソッドで登録したイベントハンドラオブジェ クトを返します。
...WIN32OLE_EVENT#handler=メソッドで登録したイベントハンドラオブジェ
クトを返します。
@return イベントハンドラオブジェクト。未登録ならばnil。... -
WIN32OLE
_ METHOD # event _ interface -> String | nil (18607.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 # return _ type -> String (18607.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 (18607.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 (18607.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 (18607.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
_ TYPE # major _ version -> Integer (18607.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 (18607.0) -
型のマイナーバージョン番号を取得します。
...取得します。
@return 型のマイナーバージョン番号を整数で返します。
@raise WIN32OLERuntimeError 型属性の読み取りに失敗すると通知します。
tobj = WIN32OLE_TYPE.new('Microsoft Word 14.0 Object Library', 'Documents')
p tobj.minor_version # => 5... -
WIN32OLE
_ TYPE # progid -> String | nil (18607.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 # source _ ole _ types -> [WIN32OLE _ TYPE] (18607.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 # src _ type -> String | nil (18607.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 . progids -> [String] (18607.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 # library _ name -> String (18607.0) -
TypeLibのヘルプファイル用ドキュメント文字列からTypeLibの名前を取得します。
...名前を取得します。
@return TypeLibの名前を文字列で返します。
@raise WIN32OLERuntimeError ドキュメント文字列が取得できなかった場合に通知します。
tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
tlib.library_name # => Excel... -
WIN32OLE
_ TYPELIB # major _ version -> Integer (18607.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 (18607.0) -
TypeLibのマイナーバージョン番号を取得します。
...取得します。
@return TypeLibのマイナーバージョン番号を整数で返します。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。
tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.minor_version # => 7... -
WIN32OLE
_ TYPELIB # version -> Float (18607.0) -
TypeLibのバージョン番号を取得します。
...号、小数点
数部にマイナーバージョン番号を設定したFloatで返します。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。
tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.version # => 1.7... -
WIN32OLE
_ VARIABLE # varkind -> Integer (18607.0) -
変数の種類(VARKIND)を取得します。
...@return VARKINDに対応する数値を返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
puts tobj.variables.map {|v| v.varkind}.uniq # => 2
数値の意味については、WIN32OLE_VARIABLE#variable_kindの説明を参照してください。... -
WIN32OLE
_ VARIANT # vartype -> Integer (18607.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 (18607.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... -
WIN32OLERuntimeError (18025.0)
-
COMインターフェイスエラー時に発生する例外です。
...COMインターフェイスエラー時に発生する例外です。
WIN32OLERuntimeErrorは、OLEオートメーション呼び出しが例外ステータス
(HRESULTのMSBがオン)で返った場合や、メソッド呼び出し時にオートメーショ
ン仕様で認められていな... -
WIN32OLE
_ VARIANT . new(val , vartype = nil) -> WIN32OLE _ VARIANT (9643.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
:: VARIANT :: VT _ CY -> Integer (9625.0) -
通貨型(CURRENCY)を示します(6)。
...とで、加減算について誤差を生じさせない小数点
数を表現します。
CURRENCY型の有効範囲は-922337203685477.5808から922337203685477.5807です。
WIN32OLEはオートメーション呼び出しの返り値がCURRENCY型の場合、文字列に
変換します。... -
WIN32OLE
_ PARAM # ole _ type _ detail -> [String] (9625.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
:: VARIANT :: VT _ BOOL -> Integer (9607.0) -
真偽値を示します(11)。
真偽値を示します(11)。 -
WIN32OLE
:: VARIANT :: VT _ DATE -> Integer (9607.0) -
日付型(DATE)を示します(7)。
...日付型(DATE)を示します(7)。
OLEオートメーションのDATE型は、1899年12月30日0時00分からの日時を示す64
ビット浮動小数点数型です。
WIN32OLEは、RubyのTime型と自動的に変換します。... -
WIN32OLE
:: VARIANT :: VT _ DISPATCH -> Integer (9607.0) -
OLEオートメーションオブジェクトを示します(9)。
OLEオートメーションオブジェクトを示します(9)。
RubyのオブジェクトをOLEオートメーションサーバへ与える場合に利用します。 -
WIN32OLE
:: VARIANT :: VT _ EMPTY -> Integer (9607.0) -
空(初期化状態)のオブジェクトを示します(0)。
空(初期化状態)のオブジェクトを示します(0)。 -
WIN32OLE
:: VARIANT :: VT _ I1 -> Integer (9607.0) -
符号付き8ビット整数(char)を示します(16)。
符号付き8ビット整数(char)を示します(16)。
OLEオートメーションの仕様上は利用できません。 -
WIN32OLE
:: VARIANT :: VT _ I2 -> Integer (9607.0) -
符号付き16ビット整数(short)を示します(2)。
符号付き16ビット整数(short)を示します(2)。 -
WIN32OLE
:: VARIANT :: VT _ I4 -> Integer (9607.0) -
符号付き32ビット整数(int)を示します(3)。
符号付き32ビット整数(int)を示します(3)。 -
WIN32OLE
:: VARIANT :: VT _ INT -> Integer (9607.0) -
符号付き整数(int)を示します(22)。
符号付き整数(int)を示します(22)。 -
WIN32OLE
:: VARIANT :: VT _ NULL -> Integer (9607.0) -
NULL型の値を示します(1)。
...NULL型の値を示します(1)。
WIN32OLE::VARIANT.VT_EMPTYと異なり、NULLという値(たとえばSQLパラ
メータでNULLを指定する場合など)を示します。... -
WIN32OLE
:: VARIANT :: VT _ UI1 -> Integer (9607.0) -
符号なし8ビット整数(unsigned char)を示します(17)。
符号なし8ビット整数(unsigned char)を示します(17)。 -
WIN32OLE
:: VARIANT :: VT _ UI2 -> Integer (9607.0) -
符号なし16ビット整数(unsigned short)を示します(18)。
符号なし16ビット整数(unsigned short)を示します(18)。
OLEオートメーションでは利用できません。代わりにVT_I2を利用してください。 -
WIN32OLE
:: VARIANT :: VT _ UI4 -> Integer (9607.0) -
符号なし32ビット整数(unsigned int)を示します(19)。
符号なし32ビット整数(unsigned int)を示します(19)。
OLEオートメーションでは利用できません。代わりにVT_I4を利用してください。 -
WIN32OLE
:: VARIANT :: VT _ UINT -> Integer (9607.0) -
符号なし整数(unsigned int)を示します(23)。
符号なし整数(unsigned int)を示します(23)。
OLEオートメーションでは利用できません。代わりにVT_I4を利用してください。 -
WIN32OLE
:: VARIANT :: VT _ UNKNOWN -> Integer (9607.0) -
COMインターフェイスを示します(13)。
COMインターフェイスを示します(13)。 -
WIN32OLE
_ PARAM # name -> String (9607.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 (9607.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 # to _ s -> String (9607.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 . new(ole _ method , index) -> WIN32OLE _ PARAM (9607.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
_ VARIABLE # name -> String (9607.0) -
変数名を取得します。
...変数名を取得します。
@return 変数名を文字列で返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
variables = tobj.variables
variables.each do |variable|
puts "#{variable.name}" # => xlChart, xlDialogSheet, ...
end... -
WIN32OLE
_ VARIABLE # ole _ type -> String (9607.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] (9607.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
_ VARIABLE # to _ s -> String (9607.0) -
変数名を取得します。
...変数名を取得します。
@return 変数名を文字列で返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
variables = tobj.variables
variables.each do |variable|
puts "#{variable.name}" # => xlChart, xlDialogSheet, ...
end... -
WIN32OLE
_ VARIANT :: Empty -> WIN32OLE _ VARIANT (9607.0) -
EMPTY型のWIN32OLE_VARIANTオブジェクトです。
...EMPTY型のWIN32OLE_VARIANTオブジェクトです。
このオブジェクトは、VOID型の戻り値や、値が空なことを明示しなければなら
ない特殊な引数に利用します。
@see WIN32OLE::VARIANT::VT_EMPTY... -
WIN32OLE
_ VARIANT :: Nothing -> WIN32OLE _ VARIANT (9607.0) -
DISPATCH型の空のオブジェクトです。
...DISPATCH型の空のオブジェクトです。
@see WIN32OLE::VARIANT::VT_DISPATCH... -
WIN32OLE
_ VARIANT :: Null -> WIN32OLE _ VARIANT (9607.0) -
NULL型のWIN32OLE_VARIANTオブジェクトです。
...NULL型のWIN32OLE_VARIANTオブジェクトです。
このオブジェクトは、ADOなどのデータベースインターフェイスでNULLを指定す
るのに利用可能です。
@see WIN32OLE::VARIANT::VT_NULL... -
WIN32OLE
_ VARIANT # [](i . . . ) -> object (9343.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... -
WIN32OLE
_ VARIANT # []=(i . . . , val) -> object (9343.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
_ PARAM # input? -> bool (9325.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 (9325.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 # default -> object | nil (9307.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 # optional? -> bool (9307.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
_ VARIABLE # value -> object | nil (9307.0) -
変数の値を取得します。
...このような定数値を返します。
@return この変数が持つ定数値。値を持たない場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
variables = tobj.variables
variables.each do |variable|
puts "#{variabl... -
WIN32OLE
_ VARIABLE # visible? -> bool (9307.0) -
変数の可視性を取得します。
...変数の可視性を取得します。
@return publicアクセス可能であれば真を返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
puts tobj.variables.map {|v| v.visible?}.uniq # => true... -
WIN32OLE
_ VARIANT # value -> object (9307.0) -
値に対応するRubyオブジェクトを取得します。
...値に対応するRubyオブジェクトを取得します。
@return 値に対応するRubyのオブジェクトを返します。
obj = WIN32OLE_VARIANT.new(1, WIN32OLE::VARIANT::VT_BSTR)
obj.value # => "1" (VT_BSTRを指定して生成したので、Stringオブジェクトとなる)... -
WIN32OLE
_ VARIANT # value=(val) -> () (9307.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
. new(server , host=nil) -> WIN32OLE (679.0) -
OLEオートメーションサーバを生成します。
...ションサーバを生成し
ます。生成に成功した場合、該当サーバを操作可能なWIN32OLEオブジェクトが
返ります。
CLSIDおよびPROGIDについてはWIN32OLE.connectを参照してください。
@param server OLEオートメーションサーバを示すPROGID......引数で指定したWIN32OLEオブジェク
トを返します。
@raise WIN32OLERuntimeError オートメーションサーバの呼び出しに失敗しました。
理由はメッセージのHRESULTを調べてください。
WIN32OLE.new('Excel.Applicat......ion') # => Excel OLE Automation WIN32OLE object.
WIN32OLE.new('{00024500-0000-0000-C000-000000000046}') # => Excel OLE Automation WIN32OLE object.... -
WIN32OLE
_ TYPE # guid -> String | nil (679.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 # guid -> String (679.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
:: CP _ UTF7 -> Integer (655.0) -
文字コードの変換にUTF-7を利用することを示します(65000)。
文字コードの変換にUTF-7を利用することを示します(65000)。 -
WIN32OLE
:: CP _ UTF8 -> Integer (655.0) -
文字コードの変換にUTF-8を利用することを示します(65001)。
文字コードの変換にUTF-8を利用することを示します(65001)。 -
WIN32OLE
_ TYPE . typelibs -> [String] (625.0) -
システムに登録されているすべてのTypeLibのドキュメント文字列を取得します。
...メント文字列の配
列を返します。
Ruby-1.9.1からは、すべてのTypeLibのドキュメント文字列を取得するには、
WIN32OLE_TYPELIBオブジェクトを利用して、以下のように記述してくだ
さい。
WIN32OLE_TYPELIB.typelibs.map {|t| t.name}... -
WIN32OLE
# _ invoke(dispid , args , types) -> object | nil (607.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
# invoke(name , *args) -> object | nil (607.0) -
メソッド名を指定してオブジェクトのメソッドを呼び出します。
...持たないメソッドの場合はnil。
@raise WIN32OLERuntimeError オートメーションサーバの呼び出しに失敗しました。
理由はメッセージのHRESULTを調べてください。
excel = WIN32OLE.new('Excel.Application')
workbook = excel.wor......:Password => 'secret')
excel.invoke(:Quit)
このリストは、以下の記述と同等です。
excel = WIN32OLE.new('Excel.Application')
workbook = excel.workbooks.Open(:FileName => 'c:\\users\\public\\test.xml',
:ReadOn... -
WIN32OLE
# method _ missing(id , *args) -> object | nil (607.0) -
WIN32OLE#invokeメソッドを実行します。
...WIN32OLE#invokeメソッドを実行します。
WIN32OLEのインスタンスに対して、このリファレンスに明記されていないメソッ
ドを呼び出した場合、OLEオートメーションサーバのメソッド(プロパティ)呼
び出しと解釈します。
@param......有効なシンボルではありません。
@raise WIN32OLERuntimeError オートメーションサーバの呼び出しに失敗しました。
理由はメッセージのHRESULTを調べてください。
WIN32OLEはOLEオートメーションオブジェクトのメ......ソッド呼び出しを
method_missingを利用して実行します。このためWIN32OLEを継承するクラスを
作成してmethod_missingをオーバーライドする場合、superを呼び出してくださ
い。
@see WIN32OLE#invoke...