C# : Using SendKeys to "press" button in another app works until patrent app closes -


i writing c# console app looks see if application running, , if so, close , re-launch it. part works fine. app being opened needs "start" button being pressed. button pre-selected when app opens, needs pressing. hitting space bar "presses" button (enter key not).

i've used sendkeys.sendwait(" ") simulate space bar being pressed. works fine....until parent app (i.e.: console app) closes. @ point child app (i.e.: open program opens) reverts waiting start button press (almost program presses "stop" button before exiting).

my code

 process[] runningprocesses = process.getprocessesbyname("myprocess");         string appname = "myprocess.exe";         int limilliseconds = 5000;'   try         {             if (runningprocesses.length > 0)             {                 foreach (process process in runningprocesses)                 {                     process.kill();                                                                        (int = 30; >= 0; a--)                                                        {                         console.setcursorposition(0, 2);                         console.write("re-launching myprocess in {0} seconds.", a);                         system.threading.thread.sleep(1000);                     }                     process.start(appname);                                                              thread.sleep(limilliseconds);                                                         sendkeys.sendwait(" ");                                                          }             }             else                 process.start(appname);                                                              thread.sleep(limilliseconds);                 sendkeys.sendwait(" ");         }          catch (exception msg)         {             console.writeline("\n\noh snap, there has been error. message reads : \n\n" + msg);             console.read();         }` 

can point out error, , can fix it?

thanks

as of find 1 error in code. else has no brackets, thread.sleep , sendkeys.sendwait executed @ end of program.

to fix this. add brackets else.

process[] runningprocesses = process.getprocessesbyname("myprocess"); string appname = "myprocess.exe"; int limilliseconds = 5000;  try {     if (runningprocesses.length > 0)     {         foreach (process process in runningprocesses)         {             process.kill();                                                                (int = 30; >= 0; a--)                                                {                 console.setcursorposition(0, 2);                 console.write("re-launching myprocess in {0} seconds.", a);                 system.threading.thread.sleep(1000);             }             process.start(appname);                                                      thread.sleep(limilliseconds);                                                 sendkeys.sendwait(" ");                                                  }     }     else     {         process.start(appname);                                                      thread.sleep(limilliseconds);         sendkeys.sendwait(" ");     } } catch (exception msg) {     console.writeline("\n\noh snap, there has been error. message reads : \n\n" + msg);     console.read(); } 

Comments

Popular posts from this blog

python - Operations inside variables -

Generic Map Parameter java -

arrays - What causes a java.lang.ArrayIndexOutOfBoundsException and how do I prevent it? -