VB.NET 执行一个exe程序并实时获取返回值
python编写的exe程序,每隔5秒print一个值,想实现用VB.NET调用这个exe执行,实时获取exe执行时返回的值(print内容),主要是vb代码如何实现,用shell只能返回程序ID。
需要的是实时读取,而不是等程序执行完后再一起返回内容
求帮忙
VB.NET 执行一个exe程序并实时获取返回值
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
5条回答 默认 最新
2023大表舅 2023-05-15 14:45关注获得1.50元问题酬金 你可以使用
Process类来执行该exe程序并实时获取返回值。以下是示例代码:Dim process As New Process() With process.StartInfo .FileName = "path/to/your/python/exe/program.exe" .UseShellExecute = False '需设置为False以重定向标准输出 .RedirectStandardOutput = True '重定向标准输出 .CreateNoWindow = True '不创建新窗口 End With process.Start() Dim output As String = "" While Not process.StandardOutput.EndOfStream output &= process.StandardOutput.ReadLine() & vbCrLf '实时读取 '可以在这里对读取到的内容做其他处理 '比如可以在UI界面上展示读取到的内容 End While process.WaitForExit()通过以上代码,你可以实现用VB.NET调用这个exe执行,并实时获取exe执行时返回的值(print内容)。在每次读取完输出时你可以对其进行任何你想要的处理,比如将其展示在UI界面上。
解决 无用评论 打赏 举报