Обнаружил очень странный глюк — если на машине запущен RDP Client (удаленный рабочий стол, он же mstsc), то Clipboard.SetText() срывает крышу:
1. Если вызвать Clipboard.SetText() и сразу же Clipboard.GetText() — GetText() возвращает корректное значение.
2. Если сделать SetText(); Sleep(100); GetText() — вылетает
птичка Exception.
3. Если делать SetText() по нажатию на одну кнопку, а GetText() — на другую, последний возвращает пустую строку.
Shift+Insert из всех прочих приложений также ничего не вставляет.
Глюк проявляется не на удаленной машине, открытой через RDP, а на клиентской машине, где физически запущен RDP Client!
Подозреваю, что возникает конфликт между clipboard sharing в RDP-клиенте и .Net-реализацией класса Clipboard. Вопрос — как бороть. Вариант Капитана "не использовать RDP-клиент" работает, но не устраивает, т.к. лень перетаскивать 100500 редкоиспользуемых приложений с сервера на клиентскую машину.
P.S. На машине 2 экрана и RDP Client обычно максимизируется на второстепенный. Может, здесь загвоздка?
13.01.11 11:58: Перенесено модератором из '.NET' — TK