Running a .exe application from Windows forms

2019-01-25 13:36发布

问题:

I have an application that I run in the command prompt as follows:

C:\some_location>"myapplication.exe" headerfile.h

I want to create a Windows form application where the user can specify the location of the executable and also the header file so that the windows form can do this for him and the user wouldn't have to go to the command line and do it.

I'm very new to C#, so can anyone please help me out? Thank you!

回答1:

You need to use the Process class:

Process.Start(@"C:\some_location\myapplication.exe");

For arguments:

ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.FileName = @"C:\some_location\myapplication.exe";
startInfo.Arguments = "header.h";
Process.Start(startInfo);

Obviously you can pull these names/arguments from text boxes.



回答2:

You can try with this code:

ProcessStartInfo startInfo = new ProcessStartInfo("yourExecutable.exe");

startInfo.Arguments = "header.h"; // your arguments

Process.Start(startInfo);


回答3:

https://msdn.microsoft.com/en-us/library/system.diagnostics.processstartinfo.useshellexecute.aspx

These link will provide you full information about .exe process Info.

another way that i used is

ProcessStartInfo objProcess = new ProcessStartInfo(@"Yours .exe path");
objProcess.UseShellExecute = false;
objProcess.RedirectStandardOutput = true;
Process.Start(objProcess);

and it's working fine.