2015-04-16 3 views
0

Я создал приложение MFC GUI (blah.exe), и оно отлично работает. Мне нужно использовать его в сценарии powershell, и мне нужно, чтобы сценарий дождался завершения приложения .exe. Но .exe работает сама по себе асинхронно, то есть процесс вызова не дожидается завершения. Как мне это изменить?Сделать MFC Модальным (синхронным)

Приложение было создано в Visual Studio 2010 со стандартным мастером приложений MFC.

+0

выход приложение при запуске ли это из PowerShell, но работает нормально, если вы запустите его вручную? Это вы говорите? –

+0

Он немедленно выходит, независимо от того, как он запускается. Я считаю, что это дизайн приложений MFC gui. Я хочу изменить это для своего приложения. Я подозреваю, что ответ будет заключаться в создании консольного приложения, которое создает все диалоги, но хочет знать, есть ли более простой метод. –

+1

Проблема заключается не в том, что exe завершает работу, она будет продолжать работать до тех пор, пока диалог не исчезнет. Проблема заключается в том, что PowerShell ждет его. Вы можете увидеть это для себя с помощью Диспетчера задач. –

ответ

2

Вы должны запустить приложение, используя следующую команду в PowerShell:

Start-Process <path to exe> -NoNewWindow -Wait 
+0

Отлично. Благодарю. Намного проще, чем сменить .exe –

+0

. Добро пожаловать –

+0

@ DavidI.McIntosh нет изменений, которые вы могли бы внести в .exe, что приведет к поведению, в котором вы нуждаетесь. Это ответ. –

Смежные вопросы