I'd guess you have a lack of understanding arround processes and execution therefore your not "so good" question. I'll try to summarize what I understand.
You wan't to start another process/executabel from within your C# application?
Solution:
Have a look at Process.Start
http://msdn.microsoft.com/de-de/library/system.diagnostics.process.start(v=vs.110).aspx[
^]
In essence you give this method the file path of the executable and (if you want) command line arguments.
You want't to hinder other users from starting that application.
Possible (Hack-)Solution.
As others suggested (IF you have access to "other" exe's code) you could implement a check for a specific commandline argument (or Count)you would send from your application but user wouldn't just by "clicking".
Other Solution.
Do it with default OS Features (rights/policies)
"pack" the executable within your application (embedded resource?) so that it doesn't "appear" on the users system outside the context of your application.
...
So maybe answer the open questions (Access to "other" exe) and try to use Process.Start
Kind regards Johannes
(Don't get me wrong, but your answer to "solution1" ("my exe is not running by this method") hints to a clear lack .NET knowledge - how should a argument line check and the "normal" boilerplate code you get with a new WindowsForms-project (you have seen that code, have you?) start an exe? So all good answers won't help you if can't put it to code, nobody can circumvent learning some basics...)