WSH/外部コマンドを実行する方法・Execメソッド
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
#navi(../)
* VBScriptで外部コマンドを実行する方法・Execメソッド [#p2...
WshShellオブジェクトのExecメソッドを使い、VBScriptで外部...
同じような動作するするメソッドとしてRunメソッドがあります...
Runメソッドに関しては「[[外部コマンドを実行する方法・Run...
#contents
#htmlinsertpcsp(win-top.html,win-sp.html)
* 関連記事 [#md2c9632]
-[[外部コマンドを実行する方法・Runメソッド>WSH/外部コマン...
* とりあえずExecメソッドを利用して外部コマンドを起動する ...
mkdirコマンドを使用し、実行したカレントディレクトリににsa...
#ref(exec01.zip)
Dim oWshShell, oExec
Set oWshShell = CreateObject("WScript.Shell")
Set oExec = oWshShell.Exec("mkdir sakura")
上記のVBScriptでsakuraディレクトリが作成されます。
* Execメソッドを利用してnotepadを起動してみる [#u81b2f01]
#ref(exec02.zip)
Dim oWshShell, oExec
Set oWshShell = CreateObject("WScript.Shell")
Set oExec = oWshShell.Exec("notepad")
このVBScriptを起動すると、notepadが起動してVBScriptが終了...
nodepadが終了するまで、VBScriptが待っているようにするには...
notepadが起動されて、VBScriptはDo While ... Loopに入りま...
WshScriptExecのStatusプロパティはExecで起動したプロセスが...
プロセスが終了すると、Statusプロパティは1となります。~
Do While ... Loop 内でsleep 100することにより、100ミリ間...
notepadを閉じると、Bye!が表示されます。
#ref(exec03.zip)
Dim oWshShell, oExec
Set oWshShell = CreateObject("WScript.Shell")
Set oExec = oWshShell.Exec("notepad")
Do While oExec.Status = 0
WScript.Sleep 100
Loop
WScript.Echo "Bye!"
* 外部コマンドが出力する文字列を取得する [#v147e77a]
WshScriptExecオブジェクトのStdOutプロパティ, StdErrプロパ...
以下に、StdOut, StdErrプロパティを利用したVBScriptのサン...
** WshScriptExec.StdOut サンプル [#d37a7968]
このVBScriptのサンプルは、dirコマンドを実行しdirコマンド...
このサンプルではStdErrの文字列は無いので、STDOUTのみ表示...
(dirコマンドを実行するため、cmd /C を追加しています。直接...
#ref(exec04.zip)
Dim oWshShell, oExec, oStdOut, oStdErr
Set oWshShell = CreateObject("WScript.Shell")
Set oExec = oWshShell.Exec("cmd /C dir")
Set oStdOut = oExec.StdOut
Set oStdErr = oExec.StdErr
szStr = "STDOUT" & vbCrLf
Do While Not oStdOut.AtEndOfStream
szStr = szStr & oStdOut.ReadLine() &vbCrLf
Loop
WScript.Echo szStr
szStr = "STDERR" & vbCrLf
Do While Not oStdErr.AtEndOfStream
szStr = szStr & oStdErr.ReadLine() &vbCrLf
Loop
WScript.Echo szStr
** WshScriptExec.StdErr サンプル [#dcc12ab4]
上記のサンプルとほとんど同じです。~
Execメソッドにより起動するdirコマンドに無効なオプションを...
このVBScriptを起動するとSTDOUTには何も表示されず、STDERR...
#ref(exec05.zip)
Dim oWshShell, oExec, oStdOut, oStdErr
Set oWshShell = CreateObject("WScript.Shell")
Set oExec = oWshShell.Exec("cmd /C dir /ABCDEFG")
Set oStdOut = oExec.StdOut
Set oStdErr = oExec.StdErr
szStr = "STDOUT" & vbCrLf
Do While Not oStdOut.AtEndOfStream
szStr = szStr & oStdOut.ReadLine() &vbCrLf
Loop
WScript.Echo szStr
szStr = "STDERR" & vbCrLf
Do While Not oStdErr.AtEndOfStream
szStr = szStr & oStdErr.ReadLine() &vbCrLf
Loop
WScript.Echo szStr
#htmlinsertpcsp(win-btm.html,win-sp.html)
終了行:
#navi(../)
* VBScriptで外部コマンドを実行する方法・Execメソッド [#p2...
WshShellオブジェクトのExecメソッドを使い、VBScriptで外部...
同じような動作するするメソッドとしてRunメソッドがあります...
Runメソッドに関しては「[[外部コマンドを実行する方法・Run...
#contents
#htmlinsertpcsp(win-top.html,win-sp.html)
* 関連記事 [#md2c9632]
-[[外部コマンドを実行する方法・Runメソッド>WSH/外部コマン...
* とりあえずExecメソッドを利用して外部コマンドを起動する ...
mkdirコマンドを使用し、実行したカレントディレクトリににsa...
#ref(exec01.zip)
Dim oWshShell, oExec
Set oWshShell = CreateObject("WScript.Shell")
Set oExec = oWshShell.Exec("mkdir sakura")
上記のVBScriptでsakuraディレクトリが作成されます。
* Execメソッドを利用してnotepadを起動してみる [#u81b2f01]
#ref(exec02.zip)
Dim oWshShell, oExec
Set oWshShell = CreateObject("WScript.Shell")
Set oExec = oWshShell.Exec("notepad")
このVBScriptを起動すると、notepadが起動してVBScriptが終了...
nodepadが終了するまで、VBScriptが待っているようにするには...
notepadが起動されて、VBScriptはDo While ... Loopに入りま...
WshScriptExecのStatusプロパティはExecで起動したプロセスが...
プロセスが終了すると、Statusプロパティは1となります。~
Do While ... Loop 内でsleep 100することにより、100ミリ間...
notepadを閉じると、Bye!が表示されます。
#ref(exec03.zip)
Dim oWshShell, oExec
Set oWshShell = CreateObject("WScript.Shell")
Set oExec = oWshShell.Exec("notepad")
Do While oExec.Status = 0
WScript.Sleep 100
Loop
WScript.Echo "Bye!"
* 外部コマンドが出力する文字列を取得する [#v147e77a]
WshScriptExecオブジェクトのStdOutプロパティ, StdErrプロパ...
以下に、StdOut, StdErrプロパティを利用したVBScriptのサン...
** WshScriptExec.StdOut サンプル [#d37a7968]
このVBScriptのサンプルは、dirコマンドを実行しdirコマンド...
このサンプルではStdErrの文字列は無いので、STDOUTのみ表示...
(dirコマンドを実行するため、cmd /C を追加しています。直接...
#ref(exec04.zip)
Dim oWshShell, oExec, oStdOut, oStdErr
Set oWshShell = CreateObject("WScript.Shell")
Set oExec = oWshShell.Exec("cmd /C dir")
Set oStdOut = oExec.StdOut
Set oStdErr = oExec.StdErr
szStr = "STDOUT" & vbCrLf
Do While Not oStdOut.AtEndOfStream
szStr = szStr & oStdOut.ReadLine() &vbCrLf
Loop
WScript.Echo szStr
szStr = "STDERR" & vbCrLf
Do While Not oStdErr.AtEndOfStream
szStr = szStr & oStdErr.ReadLine() &vbCrLf
Loop
WScript.Echo szStr
** WshScriptExec.StdErr サンプル [#dcc12ab4]
上記のサンプルとほとんど同じです。~
Execメソッドにより起動するdirコマンドに無効なオプションを...
このVBScriptを起動するとSTDOUTには何も表示されず、STDERR...
#ref(exec05.zip)
Dim oWshShell, oExec, oStdOut, oStdErr
Set oWshShell = CreateObject("WScript.Shell")
Set oExec = oWshShell.Exec("cmd /C dir /ABCDEFG")
Set oStdOut = oExec.StdOut
Set oStdErr = oExec.StdErr
szStr = "STDOUT" & vbCrLf
Do While Not oStdOut.AtEndOfStream
szStr = szStr & oStdOut.ReadLine() &vbCrLf
Loop
WScript.Echo szStr
szStr = "STDERR" & vbCrLf
Do While Not oStdErr.AtEndOfStream
szStr = szStr & oStdErr.ReadLine() &vbCrLf
Loop
WScript.Echo szStr
#htmlinsertpcsp(win-btm.html,win-sp.html)
ページ名: