タイトル : 外部EXEの処理状況表示 投稿日 : 2009/02/20(Fri) 02:31 投稿者 : HAL
いつも参考にさせて頂いています。 開発環境は、 Windows XP Professional SP3 Visual Studio Team System 2008 Team Suite SP1 で御座います。 早速ですが、VB2008にて、外部EXEを実行し、 その外部EXEの処理状況を取得したく今日一日色々探し悩みました。 例として、 VB2008上フォームにてaaa.wavを指定し、ボタンを押したら、 lame.exeを実行し、aaa.mp3に変換されます。 ---------- Imports System.Diagnostics.Process ---------- dim oProc as New Process oProc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden oProc.StartInfo.FileName = "lame.exe" oProc.StartInfo.Arguments = "-m j -q 0 -b 320 aaa.wav aaa.mp3" oProc.Start() ---------- そのlame.exeの変換進行状況を VB2008上フォームのプログレスバー又は単にラベルに 変換終了最大100%で表示したいのです。 また、キャンセルボタンでは、lame.exe を終了したいのです。 BackgroundWorker にて、 時間のかかる処理をバックグラウンドで実行等の参考資料を色々なサイトにて、 お目に掛かりましたが、_DoWork内で、 ---------- For i As Integer = 1 To 100 処理 worker.ReportProgress(xxx) Next ---------- では、当たり前ですが、lame.exeが100回実行されますし… ご指導宜しくお願い致します。 |