artonです。 やっと動かし方がわかりました。 On Mon, 24 Feb 2003 20:39:24 +0900 "Masakazu Fujimoto" <masakazu / cwo.zaq.ne.jp>さん wrote: > こういう方法があるんですね。 > > ただ、試してみるとコンソールにはエラーメッセージが > 出ないので、正しく関数Samは呼ばれているようなのですが、 > 相変わらずAssertWindows(?)は出ませんでした。 次の方法で、明示的に呼び出してください。 ie.document.parentWindow.Sam._invoke 0, [],[] window.JScript関数名 に対して、IEは、JScriptの関数オブジェクトを返してきます。それに対して VBScriptやJScriptは、デフォルトメソッドを呼び出すようですが、Win32OLEは、 呼び出したスクリプトに対して、該当するオブジェクトを返します。 この動作は、おそらく変更しにくいと思います。 したがって、返送されたオブジェクト(=JScriptの関数オブジェクト)に対して、 _invoke …… OLEメソッドを直接呼ぶためのWin32OLEのメソッド を、以下の引数で呼び出します。 0 …… デフォルトメソッドを意味する数値(DIPSID) []……引数を示す配列(この場合は、空要素) []……引数の型を示す配列(この場合は、空要素) 引数を取るJScriptの関数の場合には、適宜、[]内に設定してください。 例) <script type="text/javascript"> <!-- function Ab(a) { window.alert(a); } // --> </script> を呼ぶのであれば ie.document.parentWindow.Ab._invoke 0, ['Hello'], [WIN32OLE::VARIANT::VT_BSTR] -- arton <artonx / yahoo.co.jp> __________________________________________________ Do You Yahoo!? Yahoo! BB is Broadband by Yahoo! http://bb.yahoo.co.jp/