开发者

VB.NET read standard output

开发者 https://www.devze.com 2023-03-16 07:46 出处:网络
From my开发者_开发知识库 application I need to run a command and parse the output. I can do this with no problem but I don\'t want the command to be displayed. I hoped WindowStyle = ProcessWindowStyle

From my开发者_开发知识库 application I need to run a command and parse the output. I can do this with no problem but I don't want the command to be displayed. I hoped WindowStyle = ProcessWindowStyle.Hidden would work but it doesn't. Take the sample code below for example. It works fine but the command window still visibly opens and closes very quickly and I need it to never show its ugly face. How can I fix this?

Dim myprocess As New Process
Dim lines As String = ""

With myprocess
    .StartInfo.FileName = "C:\Windows\System32\cmd.exe"
    .StartInfo.Arguments = "/c ipconfig"
    .StartInfo.WindowStyle = ProcessWindowStyle.Hidden
    .StartInfo.RedirectStandardOutput = True
    .StartInfo.UseShellExecute = False
    .Start()
End With

lines = myprocess.StandardOutput.ReadToEnd

MsgBox(lines)


Try setting CreateNoWindow to True too.

If what you are trying to achieve is to find the IP address(es) of the local machine, there are more direct ways of doing it.


Include

.StartInfo.CreateNoWindow = True


Try these settings in tandem:

            .CreateNoWindow = True
            .UseShellExecute = False

See http://blogs.msdn.com/b/jmstall/archive/2006/09/28/createnowindow.aspx for more details.

0

精彩评论

暂无评论...
验证码 换一张
取 消