C++ MSDN文档中的OpenInputDesktop到底代表什么?

C++ MSDN文档中的OpenInputDesktop到底代表什么?,c++,desktop,msdn,C++,Desktop,Msdn,我当时正在检查,有很多功能,我不清楚它们的确切设备和参数是什么。其中之一是 下面是DeskTopReplication API示例代码中如何使用此函数的代码片段 // Get desktop DUPL_RETURN Ret; HDESK CurrentDesktop = nullptr; CurrentDesktop = OpenInputDesktop(0, FALSE, GENERIC_ALL); 所以我的问题是桌面到底意味着什么 如果我有一个多显示器系统,主桌面:

我当时正在检查,有很多功能,我不清楚它们的确切设备和参数是什么。其中之一是

下面是DeskTopReplication API示例代码中如何使用此函数的代码片段

// Get desktop
    DUPL_RETURN Ret;
    HDESK CurrentDesktop = nullptr;
    CurrentDesktop = OpenInputDesktop(0, FALSE, GENERIC_ALL);
所以我的问题是桌面到底意味着什么

如果我有一个多显示器系统,主桌面:1366X768,辅桌面为1920X1080,那么桌面是指主桌面:1366X768的桌面区域,还是指(1920+1366)3286X1080的整个屏幕区域

或者我们是否可以在函数调用中选择上述两种桌面定义中的一种。然而,我找不到任何参数可以改变,这将让我这样做

更新 我提到了,但我还没有找到我的问题的具体答案。有人提到:

此活动桌面,也称为输入桌面,是用户当前可见并接收用户输入的桌面

这是指主监视器吗?我仍然对桌面和显示器的概念感到困惑

默认情况下,交互式窗口站中有三个桌面:默认、屏幕保护程序和Winlogon


这消除了桌面和显示器之间没有关系的疑问。但是,当连接多个显示器时,桌面区域意味着什么?主显示器或组合屏幕空间上是否有默认/屏幕保护程序?

我在这个链接上找到了问题的答案:

如有提及:

所有监视器的边框都是虚拟屏幕。桌面覆盖虚拟屏幕,而不是单个显示器

这基本上让我搞不清楚桌面到底代表什么。谢谢你的帮助@Ben Voigt

在这个链接上,有人提到:

每个物理显示由HMONITOR类型的监视器句柄表示。物理显示器具有相同的HMONITOR,只要它是桌面的一部分

因此,这澄清了我关于物理设备、虚拟屏幕以及它们如何与MSDN中的监视器和桌面相关的概念


希望这有助于寻找与我类似的答案。

MSDN本身可以帮助您:我阅读了您提到的文章,但我仍然不清楚我提出的疑问@本沃伊格蒂你的困惑是因为用“桌面”这个词来表示“显示表面”。当您试图理解Windows API时,需要使用其术语,这并不总是等同于非程序员的常用用法。在Windows API中,“桌面”是一个包含“窗口站”的对象,它本身是顶级窗口的容器(所有其他窗口都是间接后代)。它没有维度,或者类似的东西。它只存在于窗口层次结构中。@BenVoigt您能给我解释一下桌面或“显示表面”与多监视器系统的精确关系吗?如中所述,交互式窗口站中有三个桌面:默认、屏幕保护程序和Winlogon。这意味着桌面只与主显示器相关,对吗?以及为多监视器系统中的辅助监视器创建的不同桌面。还是我完全弄错了?