wscで関数を外部モジュール化

VBSでツールを作成しているとログの出力やWMIへのアクセスなど同じような関数を書くことが多く外部モジュールにして自分用のライブラリにできないか調べてみるとwsf形式で作成すれば外部vbsファイルを読み込めるみたいですがメインプログラムをxml形式内に記述するのも個人的にみずらく嫌いなので他の方法を探してみた。

どうやらWindows Script Component(*.wsc)と言う形式にした外部ファイルであれば読み込んで使えるみたい、wsc形式はコンポーネントとして作成しレジストリに登録して使うみたいですがwscファイルを直接指定して使う事もできた。

試してみて気がついたのが組込オブジェクトであるWScriptは使えない(WScript.echoとか)、先頭行のxmlタグにencoding="Shift_JIS"をしてしておかないとコメントに日本語を使うとエラーになったりするみたい(wscもxml形式で記述しデフォルトUTFだからかな・・・)

今後はwscに共通処理部分を記述していこうかな。

【メモ】
コンポーネントを登録した場合
Set objA = CreateObject("hogehoge.ScriptComponent")
・登録せずに使う場合
Set objA = GetObject("script:c:\hoge.wsc")


【参考】
http://tuka.s12.xrea.com/index.xcg?p=FrontPage
http://www.geocities.jp/maru3128/SakuraMacro/usage/wsc.html