DOBON.NETプログラミング道掲示板

No34768 の記事


■34768 / )  コンソールではなくテキストボックスに文字列を出力したい
□投稿者/ スイカ 一般人(1回)-(2021/06/09(Wed) 13:29:44)
  • アイコン環境/言語:[Windows 10 Pro 64bit/Visual Studio 2019/VB.NET/.NET Framework 4.7.2] 
    分類:[.NET] 

    下記のサンプルで文字列の出力をコンソールではなくて、
    テキストボックスにしたいと思い変更してみましたが、
    テキストボックスには何も表示されずにフォームも移動すらできなくなります。

    免罪符で恐縮ですが、プログラミングを始めてまもなくGoogle検索して調べているのですが、
    お手上げ状態になってしまい質問させていただきました。

    どうかよろしくお願いします。

    【■変更前】
    > Private Shared Sub p_OutputDataReceived(sender As Object, _
    > e As System.Diagnostics.DataReceivedEventArgs)
    > '出力された文字列を表示する
    > Console.WriteLine(e.Data)
    > End Sub

    【■変更後】
    > Private Shared Sub p_OutputDataReceived(sender As Object, _
    > e As System.Diagnostics.DataReceivedEventArgs)
    > '出力された文字列を表示する
    > 'Console.WriteLine(e.Data)
    > '下だとエラー
    > 'TextBox1.Text = e.Data
    > '検索して下記のようにするといいと見つけましたがフォームの移動すらできなくなる
    > Me.Invoke(Sub() Me.TextBox1.Text = e.Data)
    > End Sub

    【■サンプル】
    -DOSコマンドを実行し出力データを取得する
    --出力とエラーの両方を読み取る
    https://dobon.net/vb/dotnet/process/standardoutput.html

    【■サンプル内で実行しているコマンド】
    PINGコマンドのため、結果は1行ずつわずかに時間をおいて返ってきます。
    訂正前:p.StartInfo.Arguments = "/c dir c:\ /w"
     ↓
    訂正後:p.StartInfo.Arguments = "/c ping 192.168.0.1"

    【■環境】
    ・Windows 10 Pro 64bit
    ・Visual Studio 2019
    ・VB.NET
    ・Windows フォーム アプリケーション(.NET Framework)
    ・.NET Framework 4.7.2
違反を報告
返信 削除キー/


Mode/  Pass/


- Child Tree -