I have an application that gets passed command line arguments. After a certain amount of time I want to restart my application, passing it the same command line arguments from the first time the application was started.
private void frmSetTime_Load(object sender, EventArgs e)
{
try
{
string[] cmds = System.Environment.GetCommandLineArgs();
//Here i gets Command Line Arguments
}
catch (Exception ex)
{
MessageBox.show(ex.message);
}
finally
{
GC.Collect();
}
}
public void ExecuteLogic(Object obj)
{
try
{
//My set of Statements
Therad.sleep(5000);
ExecuteLogic(obj);
}
catch (Exception ex)
{
MessageBox.show(ex.message);
}
finally
{
GC.Collect();
ApplicationRestart();
}
}
private void ApplicationRestart()
{
try
{
if (Process.GetCurrentProcess().WorkingSet64 >= 10000000)
{
Application.Restart();
}
}
catch (Exception ex)
{
MessageBox.Show(ex.message);
}
}
This will happen automatically. You don't need to change anything.
From the docs of Application.Restart :
If your application was originally supplied command-line options when it first executed, Restart will launch the application again with the same options.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.