Click here to Skip to main content
13,297,048 members (58,756 online)
Rate this:
Please Sign up or sign in to vote.
Hi. I want to use to execute a program (*.exe file), wait till it finishes and get the return value the *.exe program returns. Now I did accomplish this using the code bellow however the error code i get the first few tries is correct but then i keep getting 0xCDCDCDCD as the error code. I don't understand why running this code would generate the wrong result after few tries. Please help.
How can i ensure i get the correct exit code
Ps. the *.exe file was writen in c++ and it always returns a positive integer where as 0xCDCDCDCD is negative as a signed integer representation

Dim startInfo As New System.Diagnostics.ProcessStartInfo
Dim MyProces As Process
startInfo.FileName = myExeFileName
startInfo.Arguments = myExeArgString
startInfo.CreateNoWindow = True
startInfo.UseShellExecute = True
startInfo.WindowStyle = ProcessWindowStyle.Hidden
MyProces = Process.Start(startInfo)
If (MyProces.ExitCode <> 0) Then
  MsgBox("0x" + Hex(MyProces.ExitCode()))
End If
Posted 3-Mar-11 14:31pm
Updated 28-Aug-17 5:16am
Henry Minute225.9K

1 solution

Rate this: bad
Please Sign up or sign in to vote.

Solution 1

The Process class has an ExitCode property. Example here[^].

I think that is what you need. :)
SAKryukov 3-Mar-11 21:47pm
Yes, that's it, my 5.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Top Experts
Last 24hrsThis month

Advertise | Privacy |
Web02 | 2.8.171207.1 | Last Updated 28 Aug 2017
Copyright © CodeProject, 1999-2017
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100