虚拟桌面是一种可以在电脑原来桌面基础上再创造一个新的桌面出来,在新的桌面上可以进行日常的操作。
虚拟桌面的用途:
1.将任何有UI界面的软件变成一个后台软件,将原来的桌面内容隐藏,包括UI。
2.可以在不同桌面进行不同工作,相互之前不受影响。
如何创建一个虚拟桌面,微软已经设定好了API,看以下代码。
#include "windows.h"
void main()
{
STARTUPINFO si;
PROCESS_INFORMATION pi;
char DeskName[]="joke";
HDESK hold = GetThreadDesktop(GetCurrentThreadId());
HDESK hhdesk = CreateDesktop( DeskName, NULL, NULL, DF_ALLOWOTHERACCOUNTHOOK, GENERIC_ALL, NULL);
SwitchDesktop( hhdesk);
SetThreadDesktop( hhdesk);
ZeroMemory( &si, sizeof(si) );
si.cb = sizeof(si);
si.lpDesktop = DeskName;
ZeroMemory( &pi, sizeof(pi) );
CreateProcess( NULL, "explorer", NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi);
Sleep(10000);
SwitchDesktop( hold);
CloseDesktop( hhdesk);
}