プログラマ用 .wsf

  各種定義とソース分割



.vbs では外部に書いた関数を読み込めないので、後々の為にこちらを使用しておいたほうが得策です
ここで紹介している3つの外部ファイルは、最低限の関数しか実装していません。しかし、他のページでそれぞれに追加すべき処理を紹介して行きます

  • wsh.vbs
  • interactive.vbs
  • common.vbs

  • <JOB>
    <COMMENT>
    ************************************************************
     標準的なオブジェクトを作成
    ************************************************************
    </COMMENT>
    <OBJECT id="WshShell" progid="WScript.Shell" />
    <OBJECT id="Fso" progid="Scripting.FileSystemObject" />
    <OBJECT id="Dic" progid="Scripting.Dictionary" />
    <OBJECT id="Shell" progid="Shell.Application" />
    
    <OBJECT id="Cn" progid="ADODB.Connection" />
    <OBJECT id="Rs" progid="ADODB.Recordset" />
    <OBJECT id="Stream" progid="ADODB.Stream" />
    <OBJECT id="Adox" progid="ADOX.Catalog" />
    
    <REFERENCE object="ADODB.Connection" />
    
    <COMMENT>
    ************************************************************
     外部スクリプト定義
    ************************************************************
    </COMMENT>
    <SCRIPT language="VBScript" src="wsh.vbs"></SCRIPT>
    <SCRIPT language="VBScript" src="interactive.vbs"></SCRIPT>
    <SCRIPT language="VBScript" src="common.vbs"></SCRIPT>
    
    <SCRIPT language=VBScript>
    ' ***********************************************************
    ' 処理開始
    ' ***********************************************************
    
    
    </SCRIPT>
    </JOB>
    







      wsh.vbs



    良く使うWSH 固有の基本処理です。
    ( IE や ASP では使用できません )

    ' **********************************************************
    ' 引数の数
    ' **********************************************************
    Function Argc
    
    	Argc = WScript.Arguments.Count
    
    End Function
    
    ' **********************************************************
    ' 引数の内容
    ' **********************************************************
    Function Argv( nNo )
    
    	Dim strRet
    
    	on error resume next
    	strRet = WScript.Arguments( nNo )
    	if Err.Number <> 0 then
    		strRet = Empty
    	end if
    	on error goto 0
    
    	Argv = strRet
    
    End Function
    
    ' **********************************************************
    ' スクリプト終了
    ' **********************************************************
    Sub Quit
    
    	WScript.Quit
    
    End Sub
    
    ' **********************************************************
    ' 出力
    ' **********************************************************
    Sub Print( strValue )
    
    	Wscript.Echo strValue
    
    End Sub
    
    ' **********************************************************
    ' スリープ
    ' **********************************************************
    Sub Sleep( nMilliseconds )
    
    	WScript.Sleep( nMilliseconds )
    
    End Sub
    







      interactive.vbs

    コンピュータを操作しているユーザと対話する為の処理です
    ( ASP はサーバ処理なので使用できません )

    ' **********************************************************
    ' メッセージボックス
    ' **********************************************************
    Sub MsgOk( strValue )
    
    	MsgBox( strValue )
    
    End Sub
    






      common.vbs

    一般的な VBScript の処理なので、WSH、IE、ASP 全てで使用できます

    ' **********************************************************
    ' シングルクォートで囲む
    ' **********************************************************
    Function Ss( strValue )
    
    	Ss = "'" & strValue & "'"
    
    End Function
    
    ' **********************************************************
    ' ダブルクォートで囲む
    ' **********************************************************
    Function Dd( strValue )
    
    	Dd = """" & strValue & """"
    
    End Function
    






      バッチ処理用 wsf

    スクリプトにデータを含めてそのデータを行ごとに表示する処理のサンプルです。

    Wscript.Echo をループ処理内で行っているので、wscript.exe( Windows UI 用 ) を使って実行すると、毎回メッセージボックスが表示されてしまいます。なので、cscript.exe を使ってコマンドプロンプトからの実行を行うようにメッセージを表示しています。

    <JOB>
    <SCRIPT language=VBScript>
    
    ' コマンドプロンプトより起動される為の処理
    str = WScript.FullName
    str = Right( str, 11 )
    str = Ucase( str )
    if str <> "CSCRIPT.EXE" then
    	strMessage = "コマンドプロンプトより cscript " & WScript.ScriptFullName
    	strMessage = strMessage & " と指定して実行して下さい   " & vbCrLf & vbCrLf
    	strMessage = strMessage & "( この文字列をクリップボードにコピーした場合は"
    	strMessage = strMessage & "ctrl+c です )"
    	WScript.Echo strMessage
    	WScript.Quit
    end if
    
    aData = Split( getResource("myText"), vbCrLf )
    For I = 0 to Ubound( aData )
    	if Trim( aData(I) ) <> "" then
    		Wscript.Echo aData(I)
    	end if
    Next
    
    </SCRIPT>
    
    <RESOURCE id="myText">
    コード名称マスタ
    商品マスタ
    得意先マスタ
    社員マスタ
    取引データ
    </RESOURCE>
    </JOB>
    













      infoboard   管理者用   
    このエントリーをはてなブックマークに追加





    フリーフォントWEBサービス
    SQLの窓WEBサービス

    SQLの窓フリーソフト

    素材

    一般WEBツールリンク

    SQLの窓

    フリーソフト

    JSライブラリ