我试图弄清楚如何发送正在运行的应用程序来执行使用 CreateDesktop 创建的新 Windows 桌面。
我可以创建一个新桌面,然后在其中启动一个应用程序,错误我找不到使用正在运行的应用程序的方法。所有与桌面管理相关的功能(i.ec、SetThreadDesktop)始终只适用于当前线程
有什么提示吗?
谢谢您的回答。
好吧,事实上,我需要做的是移动不是我开发的应用程序(即notepad.exe)
如果查看 Powertoys ( http://www.microsoft.com/windowsxp/downloads/powertoys/xppowertoys.mspx ) 的虚拟桌面管理器,它会在同一个 WindowStation 中创建多个虚拟桌面。我知道有类似的应用程序可以将正在运行的应用程序(notepad.exe、calc.exe..)从一个虚拟桌面移动到另一个虚拟桌面,而无需关闭它并再次重新打开它(然后传递新的桌面句柄 [HDESK]在调用 CreateProcess 时),但即使在阅读了所有相关的 msdn 文档之后,我仍然不知道该怎么做:|
我也想过 SetProcessWindowStation,但就我现在而言,使用 CreateDesktop 函数创建的所有新虚拟桌面都在同一个 WindowStation 上,所以......
也许我错过了什么?