WSCでの記述方法
WSC(Windows Script Components)は、通称「スクリプトコンポーネント」と呼ぶことが多いです。
スクリプトコンポーネントはWSFファイルと同様、XML形式で記述します。
スクリプトコンポーネントのすごいところは「コンポーネント化」できるところです。
コンポーネント化したスクリプトは、他のVBScriptやVB6.0などからも呼び出して使用することができます。
試す手順
- VBSファイルと同様、テキストファイルに記述して保存するだけですが「wsc」という拡張子で保存します。
(例)calc.wsc - また、そのWSCファイルを呼び出すためのWSFファイルかVBSファイルも作成します。
- エクスプローラでWSCファイルを右クリックし「登録」を行います。
例えばWSCファイルには以下のようなスクリプトを書きます。
<?xml version="1.0" encoding="Shift_JIS" standalone="yes" ?>
<package>
<?component error="true" debug="true"?>
<comment>テスト用コンポーネント</comment>
<component id="calctest">
<registration progid="Test.Calc" description="テスト" version="1" />
<public>
<method name="fnTest">
<parameter name="iValue"/>
</method>
</public>
<script language="VBScript">
<![CDATA[
Function fnTest(iValue)
fnTest = iValue * 5
End Function
]]>
</script>
</component>
</package>
上記WSCファイルを呼び出すためのWSFファイルは以下のようになります。
<?xml version="1.0" encoding="Shift_JIS" standalone="yes" ?>
<job id="main">
<?job error="True" debug="True" ?>
<object id="objTest" progid="Test.Calc" />
<script language="VBScript">
<![CDATA[
MsgBox objTest.fnTest(3)
]]>
</script>
</job>
上記WSCファイルを呼び出すためのVBSファイルは以下のようになります。
Dim objTest
Set objTest = CreateObject("Test.Calc")
MsgBox objTest.fnTest(3)
Set objTest = Nothing