Видимость приложения WPF после удаленного рабочего стола

у меня есть приложение WPF, которое находится поверх всех остальных окон. В 99% случаев он работает отлично, однако, если я подключаюсь к своему компьютеру из другого места с помощью удаленного рабочего стола, а затем закрываю соединение и возвращаюсь к исходному компьютеру, мое приложение не отображается. проверяя запущенные процессы, я вижу, что он все еще работает, но его вообще не видно. Я предполагаю, что это как-то связано с удаленным взаимодействием, но мне было интересно, есть ли какой-то код, который я могу запускать, скажем, каждые 20 секунд, который находится в своем собственном потоке, который проверяет, виден ли он, и если нет, будет выполнять какой-то код, будь то pInvoke или . NET, чтобы снова стать видимым. Любые идеи?


person Grant    schedule 12.08.2009    source источник


Ответы (1)


Обязательно обновитесь до .NET 3.5sp1. Были некоторые изменения с удаленным взаимодействием, которые привели к тому, что приложения WPF отправлялись в виде растровых изображений на удаленный рабочий стол во всех ситуациях.

В более ранних версиях платформы были проблемы с приложениями WPF, которые вызывали очень странное поведение в сочетании с удаленным рабочим столом.

Еще одна идея — убедитесь, что вы используете самые последние и лучшие версии графических драйверов от поставщика видеокарты. WPF интенсивно использует DirectX, и потенциально это может быть ошибкой драйвера, препятствующей правильному сбросу контекста.

person Reed Copsey    schedule 12.08.2009
comment
Спасибо, Рид, за ваш ответ, о котором уже сообщалось. Я узнал, что это ошибка ОС, о которой уже сообщалось. Это происходит только в приложении WPF, когда мы делаем Allowtranspracy равным true для окон. - person ; 13.10.2010