65.9K
CodeProject is changing. Read more.
Home

Calling a console application from the web on button click event

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.40/5 (4 votes)

Feb 12, 2013

CPOL
viewsIcon

24476

How to call a console application from the web on button click.

Introduction

I am sharing here the code to call a console application from a web on a button click event. We can track the begin and end time of the application here. The most important thing is we can also check whether the process is already running priorly or not.

The code snippet is as follows:

protected void btnStartProcess_Click(object sender, EventArgs e)
{
    // We can configure the path from the web config file too

    string filePath = @"C:\\Users\\arnav\\Desktop\\Phrase value Util\\abc.exe";   

    System.Diagnostics.ProcessStartInfo info = 
      new System.Diagnostics.ProcessStartInfo(filePath, "");

    //System.Diagnostics.Process p = System.Diagnostics.Process.Start(info);
    System.Diagnostics.Process p = new System.Diagnostics.Process();
    p.StartInfo = info;
   
    //while (p.Responding)
    while (!IsProcessOpen("abc"))
    //Here we can check for the application is running priorly or not
    {
        p.Start();
        //This line gets the start time of the process
        string startTime = p.StartTime.ToString();
        Response.Write(startTime);
    }

    string endTime = p.ExitTime.ToString();
    //This line gets the end time of the process

    Response.Write(endTime);
}

public bool IsProcessOpen(string name)
{
    //here we're going to get a list of all running processes on
   
    foreach (Process clsProcess in Process.GetProcesses())
    {              
        if (clsProcess.ProcessName.Contains(name))
        {                   
            return true;
        }
    }
  
    return false;
}

Here we can check the process is priorly open or not from web itself. This will help us in finding a single application running instances. It prevents the multiple instances at server.

In this way we can call a console application from a web application using a button click event. Hopw this will be helpfull to all.