◆ [VBScript] デバッグ上手はプログラム上手1 ~WScriptホストとCScriptホストの違い~
どーもボキです。

上手上手って何回も書いてたら、土手に見えてくるね。どて。
デバッグ上手にしとるか?MsgBoxで確認しとるじゃぁ?このド素人が!

そんな「Buon giorno」もいえないようなチミでも、上手にデバッグできる方法教えちゃろう。
全3~7回くらい。まぁ適当に。

ちなみに「Buon giorno」はイタリア語で「こんにちは」ね。
一歩イタリアに近づいたね。


まず最初に言いたいことは、デバッグにはCScriptを使え!
PCの設定をなーんも変えてないなら、VBScriptはWScriptホスト上で実行されるんよ。

なんじゃそりゃ?って思う人は、このサンプルプログラム実行してみ。

心配せんでもええ。ウィルスやら変な処理やら仕込んどりゃぁせん。下の画面が出るだけよ。

このサンプルは、WScript.Echo でのメッセージ出力を、WScriptとCScriptで同時に実行させとるんよ。
メッセージってのは、「どーもボキです」ね。それを、WScriptとCScriptの両方で表示させとるんよ。

手前にあるウィンドウがWScript、後ろの黒い画面がCScript。
WScriptは[OK]を押すまで処理が止まっとるのがわかるよね。けど、CScriptは最後までメッセージ(どーもボキです)が出とるのがわかる?
a0021757_2329095.gif
じゃけどしたん?何がいいたいんって?最初に言ったやろ?デバッグにはCScriptを使え!ちゅうことよ。
[OK]押すまで止められたらたまらんやろ?WScriptのままでデバッグするのは素人がやることじゃ。

「止めたいときはどうすりゃいいんだ?」ってぇ?
じゃけ素人なんよ。そんなときはお得意のMsgBox使やええやろ。


スクリプトホストの変更方法は簡単で。
スタート > ファイル名を指定して実行で
cmd cscript /h:cscript
を実行するだけじゃ。元のWScriptホストに戻したいなら、
cmd cscript /h:wscript
簡単じゃろ?

サンプルプログラムのソースはこれじゃけぇ。
このサンプルは、WScriptとCScriptの違いを知ってもらうために作ったんじゃけど、
コマンドプロンプト使って、プログラムを引数付きで実行するってことやってるのよね。これも勉強になるで。
' プログラム実行 -----------------------------
Run_CScript("Echo.vbs")
Run_WScript("Echo.vbs")

'---------------------------------------------
' CScriptで実行
Sub Run_CScript(FName)
s = "cmd /k cscript """& FName &""""
Run_Command(s)
End Sub

'---------------------------------------------
' WScriptで実行
Sub Run_WScript(FName)
s = "cmd /k wscript """& FName &""""
Run_Command(s)
End Sub

'---------------------------------------------
' コマンドを実行
Sub Run_Command(s_cmd)
Set objWS = CreateObject("WScript.Shell")
objWS.Run(s_cmd)
End Sub
ほな、Arrivederci!

[PR]
by yozda | 2010-10-16 23:45 | プログラミング | Trackback | Comments(0)
トラックバックURL : http://yozda.exblog.jp/tb/11434243
トラックバックする(会員専用) [ヘルプ]
<< 丸亀うどん うます え?イタリアに行ったことないっ... >>