Process.Start() in C# with examples

Process.Start() in C# with examples

There are many times a situation has occurs (such as user want to see document file, see any webpage, run any external program etc.) where user want to launch another .exe file or Application in C# programming, to resolve this problem, C# provides an efficient way through which we can do it. C# has namespace namely System.Diagnostics which have a class named Process whichplays an important role to launch another .exe or file.

Process class has a method ‘Start()’ through which we can launch another application in C# programming. Process class access local or remote process and enables to user for start or stop local system process that is we can say that process class helps to starting, stopping, controlling and monitoring external application. Process component provides to access the process, which is running in the system. Using the Process component we can obtain the list of running process in the system and we can also start the new process in the system.

Here I am giving an console application example to open directory with help of Process.Start() method. Let’s see the brief demonstration.

Example:

namespaceConsoleProcessTest

{

classProgram

{

staticvoidMain(string[] args)

{

// open the new process of opening directory

Process.Start(@"c:\\");

}

}

}

This example sends the C:\ directory name to the operating system, which will result in explorer opening the folder on your system or desktop.

Now in the same manner you can open text file, word file and much more.

Example:Open .txt and .docx file

To open these file write following code.

namespaceConsoleProcessTest

{

classProgram

{

staticvoidMain(string[] args)

{

// process one opening for ms-word file

Process.Start(@"C:\Users\Sachindra\Desktop\TestFile.docx");

// waiting for 1 second to create second process

Thread.Sleep(1000);

// process two opening for txt file

Process.Start(@"C:\Users\Sachindra\Desktop\TestTextFile.txt");

}

}

}

Example: Open any webpage or Launch URL’S

You can open any webpage through the Process.Start() method by entering URL of webpage within the Start() method as argument as well as you can also search any content or topic via the search engine such as google, yahoo etc. Let’s see brief example on it.

Search any content through google search engine write the following code:

usingSystem.Diagnostics;

usingSystem.Threading;

namespaceConsoleProcessTest

{

classProgram

{

staticvoidMain(string[] args)

{

// create method and pass content within it and search it in google

SearchContentOnGoogle("Trigger in sql server mindstick");

}

publicstaticvoidSearchContentOnGoogle(stringcontent)

{

//enter the search engine url

Process.Start("http://google.com/search?q="+content);

}

}

}

Output:

Now launch any web page URL such as:

usingSystem.Diagnostics;

usingSystem.Threading;

namespaceConsoleProcessTest

{

classProgram

{

staticvoidMain(string[] args)

{

// Launch any other url or web page

Process.Start("http://mindstick.com");

}

}

}

Output:

Example: Launch Legacy Program or .exe file

You can launch or run any executable program through the process component. Here I am taking an old console application and run it with help of ProcessStartInfo class which have many properties.

namespaceConsoleProcessTest

{

classProgram

{

staticvoidMain(string[] args)

{

// Create object of ProcessStartInfo class

ProcessStartInfostinfo= new ProcessStartInfo();

// Assign file name

stinfo.FileName= @"C:\Users\Sachindra\Desktop\Logic.exe";

// start the process without creating new window default is false

stinfo.CreateNoWindow= true;

// true to use the shell when starting the process; otherwise, the process is created directly from the executable file

I HAVE BEEN SEARCHING EVERYWHERE, COUN'T FIND A VIABLE SOLUTION BUT YOURS WORKS PERFECTLY, THANK YOU

BUT 1 MORE THING, WHEN I EXECUTE MY EXTERNAL EXE PROGRAM, IT OPENS UP NORMALLY AS IF I WENT TO ITS FOLDER AND DOUBLE CLICKED IT, HOW CAN I MAKE IT SO THAT THE EXE PROGRAM OPENS UP INSIDE MY WINFORM APPLICATION?