• 締切済み

2つのファイルの比較を行うプログラムの問題点

2つのファイル(タブを多く含む)比較を行うプログラム(Hikaku)を実行したところ、 ダンマリ状態(無限ループ)になってしまいました。 同じことを、DOS画面上で手打ちにより(fc d:\aaa.txt d:\bbb.txt)と実行した場合、 問題なく結果が表示され終了しました。 以下のプログラムの内容に問題があればご指摘下さい。よろしくお願いします。 因みに、タブを含まない2つのファイル比較では、問題なく終了しました。 Private Declare Sub Sleep Lib "KERNEL32.dll" (ByVal dwMilliseconds As Long) Sub Hikaku() Dim wsh As Object Dim stTmp As String stTmp = "fc.exe d:\aaa.txt d:\bbb.txt" Set wsh = CreateObject("Wscript.Shell") Set objFC = wsh.Exec(stTmp) '処理が終了するまで待機 Do While objFc.Status = 0 Sleep 100 Loop End Sub

みんなの回答

回答No.1

wsh.Exec()の、標準出力か、標準エラーがいっぱいになって、 プロセスが待機してるんじゃないかな。わざわざ、wsh.Exec()を 使っているのだから読み捨てたら良いのではないかな。

okayama394
質問者

補足

ありがとうございます。 具体的なコードを示して頂けると助かるのですが。