Можно ли контейнировать приложение Windows GUI на хосте Windows? - PullRequest
0 голосов
/ 21 января 2019

У меня довольно сложное в управлении Windows GUI-приложение с закрытым исходным кодом.Это грязно (оставляет файлы повсюду) и имеет запутанный процесс установки.

Было предложено, чтобы мы контейнировали приложение, но можно ли это сделать?

Для приложений UNIX существует простой шаблон - просто предоставьте приложению доступ к порту сервера X11 иразрешить приложению писать об этом, но есть ли аналог Windows?Можно ли вообще каким-либо образом контейнировать приложение Windows, но разрешить ему создавать окна на рабочем столе операционной системы хоста?

Если это возможно, есть ли какие-нибудь удобные рецепты для начала работы с этим?

1 Ответ

0 голосов
/ 23 января 2019

В настоящее время невозможно контейнировать приложение Windows GUI на хосте Windows.

Из блога Предварительный просмотр инсайдера: изображение контейнера Windows

Ларс Айвер [MSFT]в комментариях к статье ниже говорится: «В изображении контейнера, как оно есть сейчас, элементы GUI будут отображаться в сеансе 0. С этим должна работать автоматизация пользовательского интерфейса (например, программный поиск окна и т. д.)».

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

Сессия 0:

Сессия 0 зарезервирована исключительно для служб и других неинтерактивных пользовательских приложений.Пользователи, вошедшие в Windows и их пользовательские приложения, должны работать в сеансе 1 или выше.- Пользовательские интерфейсы в сеансе 0 не поддерживаются.Процессы, запущенные в сеансе 0, не имеют доступа к графическому оборудованию, поэтому пользовательские интерфейсы не могут напрямую отображаться на мониторе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...