Я пытаюсь понять, как отправить работающее приложение на новый рабочий стол Windows, созданный с помощью CreateDesktop.
Я могу создать новый рабочий стол, а затем запустить на нем приложение, ошибка, я не могу найти способ сделать это с работающим приложением. Все функции, связанные с управлением рабочим столом (например, SetThreadDesktop), всегда применяются только к текущему потоку.
Какие-нибудь намеки?
Спасибо за ваш ответ.
Что ж, на самом деле мне нужно переместить приложения, разработанные не мной (например, notepad.exe)
Если посмотреть на Virtual Desktop Manager из Powertoys (http://www.microsoft.com/windowsxp/downloads/powertoys/xppowertoys.mspx), он создает несколько виртуальных рабочих столов в одном WindowStation. Я знаю, что есть похожие приложения, которые могут перемещать запущенные приложения (notepad.exe, calc.exe ..) с одного виртуального рабочего стола на другой без необходимости его закрытия и повторного открытия (а затем передачи нового дескриптора рабочего стола [HDESK] при вызове CreateProcess), но даже после прочтения всей связанной документации msdn я все еще не могу понять, как это сделать: |
Я тоже думал о SetProcessWindowStation, но сейчас все новые виртуальные рабочие столы, созданные с помощью функции CreateDesktop, находятся на одном WindowStation, так что ...
Может я что то упустил?