Есть ли проблемы с рендерингом WPF через удаленный рабочий стол под Windows XP?

Я слышал, что примитивы WPF не будут поддерживаться удаленным рабочим столом в Windows XP. Это означает, что если вы запустите приложение WPF на машине Vista и отобразите его на машине XP (через удаленный рабочий стол), дисплей будет отправлен в виде сжатого растрового изображения.

Эта проблема решена в связи между Vista и Vista через DirectX 11 (?), Но это не будет доступно в XP. Очевидно, здесь наблюдается снижение производительности, я хотел бы понять это, прежде чем начинать разработку приложений для WPF.

Некоторую информацию по этой теме можно найти здесь:

http://blogs.msdn.com/tim/archive/2007/01/05/comparing-wpf-on-windows-vista-v-windows-xp.aspx

См. Комментарий к приведенной выше ссылке (цитата):


На вопрос SpongeJim, это делается с помощью MIL (уровня интеграции мультимедиа), который является основным ядром WPF, который обрабатывает композицию. При подключении к удаленному рабочему столу Vista / Vista примитивы MIL удаляются и затем восстанавливаются. В других комбинациях (например, 2003 / XP) удаляются растровые изображения, что, очевидно, требует гораздо большей пропускной способности. Более подробную информацию по этой теме можно найти в блоге Грега Шехтера, в частности в этой записи: http://blogs.msdn.com/greg_schechter/archive/2006/06/09/623566.aspx


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


person Scott James    schedule 13.10.2008    source источник


Ответы (3)


Начиная с .NET 3.5 SP1, вся графика WPF удаляется как растровые изображения даже при обмене данными между Vista и Vista. Из http://blogs.msdn.com/jgoldb/archive/2008/05/15/what-s-new-for-performance-in-wpf-in-net-3-5-sp1.aspx:

Теперь мы удаляем как растровые изображения во ВСЕХ случаях.

Причина в том, что WPF 3.5 SP1 теперь использует новую графическую DLL (wpfgfx.dll), и некоторые изменения нельзя было внести в существующую графическую DLL Vista (milcore.dll), которая также используется DWM.

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

person Bradley Grainger    schedule 13.10.2008

У нас не было проблем с использованием Remote Admin и Bomgar для удаленного взаимодействия после того, как эти приложения были обновлены для работы с WPF. Мы протестировали XP для XP, XP для Vista, Vista для XP и Vista для Vista. Изначально у нас были проблемы только с всплывающими подсказками и выпадающими / всплывающими окнами со списком. Последние шесть месяцев все было хорошо.

Я только что протестировал удаленное взаимодействие с виртуальной машиной Vista со своего рабочего стола XP, и наше приложение выглядело великолепно (если работает немного медленно, но это виртуальная машина ...). Я переключился на 8-битный цвет низкого качества, и проблемы с производительностью почти полностью исчезли. . Градации и т. Д. Были потеряны на фоне нашего окна и т. Д., Но определенно все еще можно было использовать.

Я не думаю, что у вас должны быть какие-либо функциональные проблемы, а только незначительные проблемы с производительностью.

person Bob King    schedule 13.10.2008

Я думаю, это зависит от вашего приложения WPF. если у вас много градиентов, анимации, кистей и т. д., ваше приложение определенно будет работать медленнее по сети ...

person Joachim Kerschbaumer    schedule 13.10.2008
comment
Хорошо, но есть огромная разница между удалением примитивов и восстановлением экрана и удаленным удалением сжатого растрового изображения! - person Scott James; 13.10.2008