sarr);WScript.Echo(TypeName(sarr));実行結果。objectJScriptTypeInfo----unknownVariant()なるほど。VBArray(sarr);WScript.Echo(vbarray.toArray());その結果。|実は公式の資料が全然無い罠。実装していないオブジェクトを扱うことができません。実装している必要があります。WEBアプリケーションとクライアントアプリの会話でWSHはレイトバインドしかサポートしないそうなので、IDispatchを実装してないコンポーネントを使う事は出来ないって事みたい。逆に言えばWSHで使える物はIDispatchを実装している物とも言える。TypeLibはきちんと理解すべき事柄です。そんな訳でよく分からない中、色々調べてみました。それぞれについて簡単に説明すると、CLSIDCOMコンポーネントの識別子(GUID)IIDCOMコンポーネントが実装するインターフェースの識別子(GUID)ProgIDCLSIDを参照する文字TypeLibCOMコンポーネントを他の言語からも使えるようにする物と言う具合です。これらの値が実際WSH等とどう関係してくるかについて調べてみます。TypeLibが含まれています。TypeLib以下にあるようです。CLSID以下にある{CLSID}の下にはProgID名とTypeLibへのGUIDへの参照値が入っている事があります。C:\WINDOWS\system32\scrrun.dllのようになっており、このDLLをOLEVIEWなどで開けばIDLを見る事が出来ます。開いてみるとinterfaceは以下の物です。{420B2830-E718-11CF-893D-00A0C9054228}のようになります。TypeLibのGUIDが一致してるのに注目です。TypeLibの関連ProgID例えば、ActiveXObjectで指定する値やWScript.CreateObject()で指定する値はProgIDになります。WScript.CreateObject("Shell.Application");といった具合で使います。File)の<object>要素ではProgIDでもオブジェクトが作成できますが、CLSIDでも作成出来ます。</job></package>は同じ事です。TypeLib前と同じくWSFの中ですが、reference要素と言うタイプライブラリへの参照を指定する際に使います。具体的にはタイプライブラリで宣言されている定数をグローバルオブジェクトに取り込むのがreference要素の役割です。</job></package>は同じ結果で、実際の定数は次のようにアクセスします。