Мне нужно, чтобы мое приложение (Master) запускало другое приложение (Worker) для определенного события.
Если я распространяю свое приложение Worker как стандартный исполняемый файл, то все в порядке, и я могу использовать Process.Начните без проблем и с радостью передайте аргументы и вызовите WaitForExit.
Если я распространяю свое приложение Worker как приложение ClickOnce, оно создает ссылку на приложение, которую я могу запустить с Process.Start(как только я помещаю его копию в ту же директорию, что и мой Master.exe), но я не могу передать ей аргументы или использовать WaitForExit.
Я хочу быть в состоянии сделать оба.Я подозреваю, что вызов ссылки запускает другой процесс, в котором фактически выполняется исполняемый файл Worker.
Мой код:
// This works as I expect, and returns a valid Process.
Process p0 = Process.Start("Worker.exe", "DoSomeMagic");
// This seems to work, but returns null.
Process p1 = Process.Start("Worker.appref-ms");
// This also returns null, but does not pass the argument to Worker.
Process p2 = Process.Start("Worker.appref-ms", "DoSomeMagic");
Мой вопрос:
Как мне это сделать"правильно"?