Проверьте модальный диалог на другой оконной станции - PullRequest
0 голосов
/ 20 сентября 2011

Мое приложение устанавливает среды выполнения Visual Studio C ++ на удаленной машине в качестве предварительного условия для другой установки. В Windows 2003, когда я обновляюсь до последнего патча среды выполнения VS 2005 C ++, обновление останавливается после запуска встроенного пакета MSI. Исправление состояло в том, чтобы использовать / Q: A вместо аргумента / Q для загрузчика vcredist.exe.

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

Кто-нибудь получил какие-либо советы по просмотру диалоговых окон в других оконных станциях или сеансах (в настоящее время диалог находится в сеансе 0).

1 Ответ

1 голос
/ 29 сентября 2011

Я думаю, что вы не можете просмотреть диалоговое окно.Тем не менее, вы можете попытаться присоединить и отладить приложение, когда оно заморожено, или присоединить и сгенерировать дамп приложения.Вы должны запустить отладчик как администратор, чтобы присоединиться к процессу в сеансе 0. В вашем случае, я думаю, вам следует искать процессы msiexec.exe, запущенные в сеансе 0.

Вы должны быть в состоянии найти потокотображение диалогового окна.Чтобы проверить содержимое диалогового окна, возможно, Spy ++ сделает свое дело (не уверен, что сможет найти окна в другом сеансе)

...