F3Device Windows API 获取错误代码 关闭应用程序窗口 关闭应用程序 关闭消息循环 移动鼠标 按下鼠标左键 释放鼠标左键 双击鼠标左键 按下鼠标右键 释放鼠标右键 双击鼠标右键 按下鼠标中键 释放鼠标中键 双击鼠标中键 鼠标滚轮 点数据 x y 默认构造 构造 x y 点数据 x y 构造 矩形数据 构造 是否包含位置点 该函数检取光标的位置,以屏幕坐标表示 该函数把光标移到屏幕的指定位置。如果新位置不在由 ClipCursor函数设置的屏幕矩形区域之内,则系统自动调整坐标,使得光标在矩形之内。 该函数获取窗口客户区的大小。注意一下:窗口的客户区为窗口中除标题栏、菜单栏之外的地方。 APP中客户区的坐标点信息转换为整个屏幕的坐标,其中:所有的坐标(无论是屏幕坐标还是客户区坐标)其坐标原点都是左上角为(0,0) 该函数返回指定窗口的边框矩形的大小, 枚举窗口的回调委托 枚举子窗口的回调委托 函数功能 该函数枚举所有屏幕上的顶层窗口,并将窗口句柄传送给应用程序定义的回调函数。回调函数返回FALSE将停止枚举,否则EnumWindows函数继续到所有顶层窗口枚举完为止。 通过将句柄传递给每个子窗口并依次传递给应用程序定义的回调函数,可以枚举属于指定父窗口的子窗口。EnumChildWindows继续,直到枚举最后一个子窗口或回调函数返回FALSE为止。 该函数将指定窗口的标题条文本(如果存在)拷贝到一个缓存区内。 该函数返回指定窗口的标题文本(如果存在)的字符长度。 函数获得一个指定子窗口的父窗口句柄 此函数为调用线程设置最后错误代码。 获取当前进程窗口句柄 获取当前进程窗口句柄列表 发送窗口消息 发送窗口消息 函数将指定的消息发送到一个窗口。 如果该窗口是由调用线程创建的;此函数为该窗口调用窗口程序,并等待窗口程序处理完消息后再返回。 如果该窗口是由不同的线程创建的,此函数将消息传给该窗口程序,并立即返回,不等待窗口程序处理完消息。 创建窗口 SetForegroundWindow函数将创建指定窗口的线程设置到前台,并且激活该窗口。键盘输入转向该窗口,并为用户改各种可视的记号。 将要设置前台的窗口句柄 如果窗口设入了前台,返回值为非零;如果窗口未被设入前台,返回值为零。 获取一个前台窗口的句柄(用户当前工作的窗口)。 返回值是一个前台窗口的句柄。在某些情况下,如一个窗口失去激活时,前台窗口可以是NULL。 窗口回调的委托 为窗口过程设置一个新的地址 改变指定窗口的属性 窗口句柄 指定将设定的大于等于0的偏移值 指定的替换值 改变指定窗口的属性(兼容32位和64位取代SetWindowLong函数) 窗口句柄 指定将设定的大于等于0的偏移值 指定的替换值 改变指定窗口的属性(兼容32位和64位取代SetWindowLong函数) 窗口句柄 指定将设定的大于等于0的偏移值 指定的替换值 改变指定窗口的属性 窗口句柄 指定将设定的大于等于0的偏移值 指定的替换值 将消息信息传送给指定的窗口过程 在前面 在后面 在前面, 位于任何顶部窗口的前面 在前面, 位于其他顶部窗口的后面 维持当前尺寸(忽略cx和Cy参数) 维持当前位置(忽略X和Y参数)。 维持当前Z序(忽略hWndlnsertAfter参数)。 不重画改变的内容。如果设置了这个标志,则不发生任何重画动作。 适用于客户区和非客户区(包括标题栏和滚动条)和任何由于窗回移动而露出的父窗口的所有部分。 如果设置了这个标志,应用程序必须明确地使窗口无效并区重画窗口的任何部分和父窗口需要重画的部分。 不激活窗口。如果未设置标志,则窗口被激活,并被设置到其他最高级窗口或非最高级组的顶部(根据参数hWndlnsertAfter设置)。 给窗口发送WM_NCCALCSIZE消息,即使窗口尺寸没有改变也会发送该消息。 如果未指定这个标志,只有在改变了窗口尺寸时才发送WM_NCCALCSIZE。 显示窗口。 隐藏窗口。 清除客户区的所有内容。如果未设置该标志,客户区的有效内容被保存并且在窗口尺寸更新和重定位后拷贝回客户区。 不改变z序中的所有者窗口的位置。 防止窗口接收WM_WINDOWPOSCHANGING消息。 在窗口周围画一个边框 与SWP_NOOWNERZORDER标志相同。 防止产生WM_SYNCPAINT消息。 如果调用进程不拥有窗口,系统会向拥有窗口的线程发出需求。这就防止调用线程在其他线程处理需求的时候发生死锁。 改变一个子窗口,弹出式窗口或顶层窗口的尺寸,位置和Z序 的窗口句柄 z-顺序 如果uFlags参数中设置了SWP_NOZORDER标记则本参数将被忽略 HWND_TOP/HWND_BOTTOM/HWND_TOPMOST/HWND_NOTOPMOST 以客户坐标指定窗口新位置的左边界 以客户坐标指定窗口新位置的顶边界 以像素指定窗口的新的宽度 以像素指定窗口的新的高度 窗口尺寸和定位的标志 该参数可以是值的组合 SWP_NOSIZE|SWP_NOMOVE|SWP_NOZORDER|SWP_NOREDRAW|SWP_NOACTIVATE|SWP_FRAMECHANGED|SWP_SHOWWINDOW| SWP_HIDEWINDOW|SWP_NOCOPYBITS|SWP_NOOWNERZORDER|SWP_NOSENDCHANGING|SWP_DRAWFRAME|SWP_NOREPOSITION| SWP_DEFERERASE|SWP_ASYNCWINDOWPOS 如果函数成功,返回值为非零;如果函数失败,返回值为零。若想获得更多错误消息,请调用GetLastError函数。 钩子委托 WH_MSGFILTER 和 WH_SYSMSGFILTER Hooks使我们可以监视菜单,滚动 条,消息框,对话框消息并且发现用户使用ALT+TAB or ALT+ESC 组合键切换窗口。 WH_MSGFILTER Hook只能监视传递到菜单,滚动条,消息框的消息,以及传递到通 过安装了Hook子过程的应用程序建立的对话框的消息。WH_SYSMSGFILTER Hook 监视所有应用程序消息。 WH_MSGFILTER 和 WH_SYSMSGFILTER Hooks使我们可以在模式循环期间 过滤消息,这等价于在主消息循环中过滤消息。 通过调用CallMsgFilter function可以直接的调用WH_MSGFILTER Hook。通过使用这 个函数,应用程序能够在模式循环期间使用相同的代码去过滤消息,如同在主消息循 环里一样 WH_JOURNALRECORD Hook用来监视和记录输入事件。典型的,可以使用这 个Hook记录连续的鼠标和键盘事件,然后通过使用WH_JOURNALPLAYBACK Hook 来回放。WH_JOURNALRECORD Hook是全局Hook,它不能象线程特定Hook一样 使用。WH_JOURNALRECORD是system-wide local hooks,它们不会被注射到任何行 程地址空间 WH_JOURNALPLAYBACK Hook使应用程序可以插入消息到系统消息队列。可 以使用这个Hook回放通过使用WH_JOURNALRECORD Hook记录下来的连续的鼠 标和键盘事件。只要WH_JOURNALPLAYBACK Hook已经安装,正常的鼠标和键盘 事件就是无效的。WH_JOURNALPLAYBACK Hook是全局Hook,它不能象线程特定 Hook一样使用。WH_JOURNALPLAYBACK Hook返回超时值,这个值告诉系统在处 理来自回放Hook当前消息之前需要等待多长时间(毫秒)。这就使Hook可以控制实 时事件的回放。WH_JOURNALPLAYBACK是system-wide local hooks,它们不会被 注射到任何行程地址空间 在应用程序中,WH_KEYBOARD Hook用来监视WM_KEYDOWN and WM_KEYUP消息,这些消息通过GetMessage or PeekMessage function返回。可以使 用这个Hook来监视输入到消息队列中的键盘消息 应用程序使用WH_GETMESSAGE Hook来监视从GetMessage or PeekMessage函 数返回的消息。你可以使用WH_GETMESSAGE Hook去监视鼠标和键盘输入,以及 其它发送到消息队列中的消息 监视发送到窗口过程的消息,系统在消息发送到接收窗口过程之前调用 在以下事件之前,系统都会调用WH_CBT Hook子过程,这些事件包括: 1. 激活,建立,销毁,最小化,最大化,移动,改变尺寸等窗口事件; 2. 完成系统指令; 3. 来自系统消息队列中的移动鼠标,键盘事件; 4. 设置输入焦点事件; 5. 同步系统消息队列事件。 Hook子过程的返回值确定系统是否允许或者防止这些操作中的一个 WH_MSGFILTER 和 WH_SYSMSGFILTER Hooks使我们可以监视菜单,滚动 条,消息框,对话框消息并且发现用户使用ALT+TAB or ALT+ESC 组合键切换窗口。 WH_MSGFILTER Hook只能监视传递到菜单,滚动条,消息框的消息,以及传递到通 过安装了Hook子过程的应用程序建立的对话框的消息。WH_SYSMSGFILTER Hook 监视所有应用程序消息。 WH_MSGFILTER 和 WH_SYSMSGFILTER Hooks使我们可以在模式循环期间 过滤消息,这等价于在主消息循环中过滤消息。 通过调用CallMsgFilter function可以直接的调用WH_MSGFILTER Hook。通过使用这 个函数,应用程序能够在模式循环期间使用相同的代码去过滤消息,如同在主消息循 环里一样 WH_MOUSE Hook监视从GetMessage 或者 PeekMessage 函数返回的鼠标消息。 使用这个Hook监视输入到消息队列中的鼠标消息 当调用GetMessage 或 PeekMessage 来从消息队列种查询非鼠标、键盘消息时 在系统调用系统中与其它Hook关联的Hook子过程之前,系统会调用 WH_DEBUG Hook子过程。你可以使用这个Hook来决定是否允许系统调用与其它 Hook关联的Hook子过程 外壳应用程序可以使用WH_SHELL Hook去接收重要的通知。当外壳应用程序是 激活的并且当顶层窗口建立或者销毁时,系统调用WH_SHELL Hook子过程。 WH_SHELL 共有5钟情况: 1. 只要有个top-level、unowned 窗口被产生、起作用、或是被摧毁; 2. 当Taskbar需要重画某个按钮; 3. 当系统需要显示关于Taskbar的一个程序的最小化形式; 4. 当目前的键盘布局状态改变; 5. 当使用者按Ctrl+Esc去执行Task Manager(或相同级别的程序)。 按照惯例,外壳应用程序都不接收WH_SHELL消息。所以,在应用程序能够接 收WH_SHELL消息之前,应用程序必须调用SystemParametersInfo function注册它自 己 当应用程序的前台线程处于空闲状态时,可以使用WH_FOREGROUNDIDLE Hook执行低优先级的任务。当应用程序的前台线程大概要变成空闲状态时,系统就 会调用WH_FOREGROUNDIDLE Hook子过程 监视发送到窗口过程的消息,系统在消息发送到接收窗口过程之后调用 监视输入到线程消息队列中的键盘消息 监视输入到线程消息队列中的鼠标消息 声明鼠标钩子的封送结构类型 POINT结构对象,保存鼠标在屏幕上的x,y坐标 接收到鼠标消息的窗口的句柄 hit-test值,详细描述参见WM_NCHITTEST消息 指定与本消息联系的额外消息 键盘Hook结构函数 即钩子发挥作用时能够得到的一些参数 虚拟按键码(1--254) 硬件按键扫描码 键按下:128 抬起:0 消息时间戳间 额外信息 把一个应用程序定义的钩子子程安装到钩子链表中 将钩子信息传递到当前钩子链中的下一个子程 卸载钩子 找出某个窗口的创建者(线程或进程) lpdwProcessId 是进程号存放处。(进程只有一个线程的话,那么线程标志符与进程标志符就是指同一个标志符) 获取一个应用程序或动态链接库的模块句柄 将指定的模块加载到调用进程的地址空间中 指定与事件关联的视觉反馈。 触摸接触事件的反馈。 笔桶按钮事件的反馈。 笔点击事件的反馈。 笔双击事件的反馈。 笔按住事件的反馈。 笔右击事件的反馈。 触摸事件的反馈。 轻触两次事件的反馈。 触摸并按住事件的反馈。 触摸右击事件的反馈。 轻按手势的反馈。 不使用。 设置窗口的反馈配置 仅限win8.1上 发生了移动。不能与TOUCHEVENTF_DOWN结合使用。 通过新的联系人建立了相应的接触点。不能与TOUCHEVENTF_MOVE或TOUCHEVENTF_UP结合使用。 触摸点已删除。 封装用于触摸输入的数据 触摸输入的x坐标(水平点)。该成员以物理屏幕坐标的百分之一像素表示。 触摸输入的y坐标(垂直点)。该成员以物理屏幕坐标的百分之一像素表示。 源输入设备的设备句柄。触摸输入提供程序会在运行时为每个设备提供唯一的提供程序。 区分特定触摸输入的触摸点标识符。从接触点下降到恢复接触点,此值在触摸接触序列中保持一致。 一组位标记,用于指定触摸点按下,释放和运动的各个方面。该成员中的位可以是“备注”部分中值的任何合理组合。 一组位标志,用于指定结构中的哪些可选字段包含有效值。 可选字段中有效信息的可用性是特定于设备的。 仅当在dwMask中设置了相应的位时,应用程序才应使用可选的字段值。 该字段可能包含“备注”部分中提到的dwMask标志的组合。 事件的时间戳,以毫秒为单位。 消费应用程序应注意,系统不对此字段执行任何验证; 当未设置TOUCHINPUTMASKF_TIMEFROMSYSTEM标志时,此字段中值的准确性和顺序完全取决于触摸输入提供程序。 与触摸事件关联的附加值。 在物理屏幕坐标中,触摸接触区域的宽度以百分之一像素为单位。仅当dwMask成员设置了TOUCHEVENTFMASK_CONTACTAREA标志时,此值才有效。 在物理屏幕坐标中,触摸接触区域的高度以百分之一像素为单位。仅当dwMask成员设置了TOUCHEVENTFMASK_CONTACTAREA标志时,此值才有效。 触摸输入数据结构大小 检索有关与特定触摸输入手柄关联的触摸输入的详细信息。 取出低顺序单字(低16位) 检索当前线程的额外消息信息。额外的消息信息是与当前线程的消息队列关联的应用程序或驱动程序定义的值。 扩展消息 扩展消息 是否是触摸消息 自己直接处理日志是给进程方式使用的 unity中将调用Log库 日志的处理事件 如果有则优先 路径信息 模块名(程序名) 模块的完整路径。 当前工作目录的完全限定路径 应用程序的当前工作目录 获取程序的基目录 应用程序的目录的名称 获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称 获取启动了应用程序的可执行文件的路径及文件名 应用程序名有扩展名 应用程序名无扩展名 桌面路径 转换字符串查看 字符串帮助 小于0 ver1 小于 ver2 ManagementObjectSearcher 对象获取串口列表 供应商可用的系统定义的设备设置类 以下类和GUID由操作系统定义。除非另有说明,否则这些类和GUID可用于在Windows 2000和更高版本的Windows上安装设备(或驱动程序): 电池设备 此类包括电池设备和UPS设备。 生物识别设备 (Windows Server 2003及更高版本的Windows)此类包括所有基于生物识别的个人识别设备。 蓝牙设备 (Windows XP SP1及更高版本的Windows)此类包括所有蓝牙设备。 Camera Device (Windows 10版本1709及更高版本的Windows)此课程包括通用相机驱动程序。 CD-ROM Drives 此类包括CD-ROM驱动器,包括SCSI CD-ROM驱动器。默认情况下,系统的CD-ROM类安装程序还会将系统提供的CD音频驱动程序和CD-ROM更换器驱动程序安装为即插即用过滤器。 Disk Drives 此类包括硬盘驱动器。另请参见HDC和SCSIAdapter类。 Display Adapters 此类包括视频适配器。此类驱动程序包括显示驱动程序和视频微型端口驱动程序。 Extension INF (Windows 10及更高版本的Windows)此类包括需要自定义的所有设备。 Floppy Disk Controllers 此类包括软盘驱动器控制器。 Floppy Disk Drives 此类包括软盘驱动器。 Hard Disk Controllers 此类包括硬盘控制器,包括ATA / ATAPI控制器,但不包括SCSI和RAID磁盘控制器。 Human Interface Devices (HID) 此类包括由系统提供的HID类驱动程序操作的交互式输入设备。这包括符合USB HID标准的USB设备和使用HID微型驱动程序的非USB设备。 IEEE 1284.4 Devices 此类包括控制多功能IEEE 1284.4外围设备操作的设备。 IEEE 1284.4 Print Functions 该类包括Dot4打印功能。Dot4打印功能是Dot4设备上的一项功能,它有一个子设备,它是打印机设备设置类的成员。 IEEE 1394 Devices That Support the 61883 Protocol 此类包括支持IEC-61883协议设备类的IEEE 1394设备。 61883组件包括61883.sys协议驱动程序,该驱动程序通过1394总线传输各种音频和视频数据流。目前包括标准/高/低质量DV,MPEG2,DSS和音频。这些数据流由IEC-61883规范定义。 IEEE 1394 Devices That Support the AVC Protocol 此类包括支持AVC协议设备类的IEEE 1394设备。 IEEE 1394 Devices That Support the SBP2 Protocol 此类包括支持SBP2协议设备类的IEEE 1394设备。 IEEE 1394 Host Bus Controller 此类包括连接在PCI总线上的1394个主机控制器,但不包括1394个外围设备。此类的驱动程序由系统提供。 Imaging Device 此类包括静止图像捕获设备,数码相机和扫描仪。 IrDA Devices 包括红外设备。此类驱动程序包括Serial-IR和Fast-IR NDIS微型端口,但另请参阅其他NDIS网络适配器微型端口的网络适配器类。 Keyboard 此类包括所有键盘。也就是说,它还必须在(辅助)INF中为枚举的子HID键盘设备指定。 Media Changers 此类包括SCSI媒体转换器设备。 Memory Technology Driver 此类包括内存设备,如闪存卡。 Modem 此类包括调制解调器设备。此类设备的INF文件指定设备的功能和配置,并将此信息存储在注册表中。 此类设备的INF文件也可用于为无控制器调制解调器或软件调制解调器安装设备驱动程序。 这些设备将调制解调器设备和设备驱动程序之间的功能分开。 Monitor 此类包括显示监视器。此类设备的INF不安装任何设备驱动程序,而是指定要存储在注册表中的特定监视器的功能,以供视频适配器的驱动程序使用。(监视器被枚举为显示适配器的子设备。) Mouse 此类包括所有鼠标设备和其他类型的指点设备,如轨迹球。也就是说,还必须在(辅助)INF中为枚举的子HID鼠标设备指定此类。 Multifunction Devices 此类包括组合卡,例如PCMCIA调制解调器和网卡适配器。这种即插即用多功能设备的驱动程序安装在此类下,并将调制解调器和网卡分别枚举为其子设备。 Multimedia 此课程包括音频和DVD多媒体设备,操纵杆端口和全动态视频捕捉设备。 Multiport Serial Adapters 此类包括智能多端口串行卡,但不包括连接到其端口的外围设备。它不包括非智能(16550型)多端口串行控制器或单端口串行控制器(请参阅Ports类)。 Network Adapter 此类包括NDIS微型端口驱动程序,不包括Fast-IR微型端口驱动程序,NDIS中间驱动程序(虚拟适配器)和CoNDIS MCM微型端口驱动程序。 Network Client 此类包括网络和/或打印提供程序。 注意 在Windows 8.1,Windows Server 2012 R2和更高版本中不推荐使用NetClient组件。 Network Service 此类包括网络服务,例如重定向器和服务器。 Network Transport 此类包括NDIS协议CoNDIS独立呼叫管理器和CoNDIS客户端,以及传输堆栈中的更高级别驱动程序。 PCI SSL Accelerator 此类包括加速安全套接字层(SSL)加密处理的设备。 PCMCIA Adapters 此类包括PCMCIA和CardBus主机控制器,但不包括PCMCIA或CardBus外设。此类的驱动程序由系统提供。 Ports (COM LPT ports) 此类包括串行和并行端口设备。另请参见MultiportSerial类。 Printers 此类包括打印机。 Printers, Bus-specific class drivers 此类包括SCSI / 1394枚举的打印机。此类驱动程序为特定总线提供打印机通信。 Processors 此类包括处理器类型。 SCSI and RAID Controllers 此类包括SCSI HBA(主机总线适配器)和磁盘阵列控制器。 Sensors (Windows 7及更高版本的Windows)此类包括传感器和位置设备,例如GPS设备。 Smart Card Readers 此课程包括智能卡读卡器。 Software Component (Windows 10版本1703及更高版本的Windows)此类包括用于封装软件组件的虚拟子设备。 Storage Volumes 此类包括由系统提供的逻辑卷管理器定义的存储卷,以及用于创建表示存储卷的设备对象的类驱动程序,例如系统磁盘班级司机。 System Devices 此类包括HAL,系统总线,系统桥,系统ACPI驱动程序和系统卷管理器驱动程序。 Tape Drives 此类包括磁带机,包括所有磁带小类驱动程序。 USB Device USBDevice包括所有不属于另一类的USB设备。此类不用于USB主机控制器和集线器。 Windows CE USB ActiveSync Devices WCEUSBS安装类支持个人计算机与通过USB与Windows CE ActiveSync驱动程序(通常为PocketPC设备)兼容的设备之间的通信。 Windows Portable Devices (WPD) (Windows Vista和更高版本的Windows)此类包括WPD设备。 Windows SideShow (Windows Vista及更高版本的Windows)此类包括与Windows SideShow兼容的所有设备。 基础配置 友好名 是否有追踪眼镜 显示器硬件ID名匹配列表 大屏配置数据 HID PID VID 匹配列表 构造当前版本的默认初始配置 所有设备配置数据 配置文件位置 版本号 GC200配置数据 GC3000配置数据 ZSpace200一体机配置数据 ZSpace300一体机配置数据 ZSpace笔记本 大屏配置数据 放后面 优先返回一体机名称 投影配置数据 投屏优先权 加载配置从C:\F3DFuture\Config\F3Device.xml 并且对比版本 如果当前库版本更高则更新到配置文件文件 GC3000配置数据 HID PID VID 匹配列表 构造当前版本的默认初始配置 一体机配置数据 HID PID VID 匹配列表 构造当前版本的默认初始配置 投影设备配置数据 HID PID VID 匹配列表 构造当前版本的默认初始配置 PID VID配置数据 PID VID 默认构造 初始参数构造 ZSpace200一体机配置 构造当前版本的默认初始配置 ZSpace300一体机配置 构造当前版本的默认初始配置 ZSpace笔记本 构造当前版本的默认初始配置 常量定义 处理类GCExecute标识 处理类BSExecute标识 处理类GMExecute标识 处理类WndExecute标识 处理类MonitorExecute标识 播放器调用一定切左右 片源左右格式 处理类FrequencyExecute标识 参数 切换2d 参数 切换3d 参数 切换左右3d 参数 切换上下3d 参数 切换2d 参数 切换3d 参数 切换2d 参数 切换左右3d 参数 切换上下3d 结果 失败 结果 成功 结果 参数类型错误 结果 参数长度错误 结果 参数无效 结果 没有启动参数 设备数据管理类 是否Invoke方式(调用进程方式)调用交互设备 是否通过播放器调用 单例对象 所有显示设备数据列表 所有HID连接列表 所有设备列表 所有显示器信息列表 windows是否是扩展显示模式(显示设备数量大于1) windows是否克隆显示模式 (显示设备数量=1 显示器数量>1) 返回一个设备名友好名 根据配置文件对比显示器名称 当前程序集版本 注:此参数控制更新本地配置文件 本地配置数据 刷新数据(包括配置数据、显示设备集合、hid连接集合、显示器集合) 切换复制/扩展模式 请调用该函数刷新数据 从所有显示器集合根据名称(m_Name)查找显示器数据 显示器名称 (m_Name) 依次与所有显示器范围计算交集 (交集范围>10 ,最大交集同一设备, 复制模式下会有多个) 根据窗口句柄查找交集范围的显示器数据集合 (交集范围>10 ,最大交集同一设备, 复制模式下会有多个) 窗口句柄 根据范围查找交集范围的显示器数据集合 (交集范围>10 ,最大交集同一设备, 复制模式下会有多个) 通过显示器数据(m_Name)查找对应的设备类 通过窗口句柄查找所在的显示器的设备类 如果复制模式下 优先返回: 公司一体机>公司大屏>其他 通过范围查找所在的显示器的设备类 如果复制模式下 优先返回: 公司一体机>公司大屏>其他 从所有设备列表中返回某类型 从所有设备列表中返回某类型集合 返回投屏窗口应该所在显示器 传入主窗口句柄 首先排除主窗口所在显示器 剩余显示器中查找的优先级别:公司大屏 > 公司一体机 > 其他显示器 主窗口句柄 是否存在 找显示器所在范围 Course3D用了 查找一体机所在显示器 大屏设备 通过HID转接口控制/通过串口控制 切换2D 切换上下画面 切换左右画面 默认帧同步 持帧同步由眼镜切 我们不主动切换 持帧同步由眼镜切 我们不主动切换 gc200 一体机设备 仅支持左右画面 切换2D 切换上下画面 切换左右画面 回调函数在其他线程 暂不支持Unity里调用 默认5秒超时 投影机设备 切换2D 切换上下画面 切换左右画面 设备基类 是否有追踪眼镜 判断的PID VID的列表 返回当前PVID列表中任一当前已连接的PVID数据 当前PVID列表是否任一连接Hid设备 配置数据 现在设备显示器PVID的兼容判断数据都从配置来 显示状态 显示状态 某些设备使用的扩展显示器名称列表 返回显示器列表中存在的显示器 --- 注意连接了多个硬件ID都是设备的只返回前一个显示器 切换设备显示状态 仅支持实现了IGraph3Device或者IFrame3Device接口的设备 状态参数 Const.RES_SUCCESS / Const.RES_FAIL 帧同步 切换2D 切换3D 设备3d(左右/上下)画面接口 切换2D 切换上下画面 切换左右画面 显示状态 解析启动参数 启动参数 帧率设置 支持的设备列表 设置所有/播放器下特定(gc3000) 特定设备的帧率 范围所在显示器 单例对象 返回单例实例 添加支持的执行对象 根据指令名查找支持的指令对象 -h输出显示 显示状态 解析启动参数 启动参数 显示状态 解析启动参数 启动参数 对应Const的传入指令 在构造Execute时赋值 对应Const的传入指令 执行参数 启动参数 返回调用参数 用来Invoke进程调用传参 参数解释 用来控制台-h查看支持的指令 补位输出 让-h参数解释更好看 目前播放器占用 一定切左右 显示状态 显示器范围left 显示器范围left 显示器范围right 显示器范围bottom 解析启动参数 启动参数 显示状态 窗口句柄 解析传入启动 启动参数 获得GUID 返回hid连接列表 连接hid设备 连接hid设备 输入报告的最大节数数量(如果使用报告ID,则包含报告ID的字节) Specifies the maximum size, in bytes, of all the input reports (including the report ID, if report IDs are used, which is prepended to the report data). 启动本dll(必须是exe修改来的) 进程方式调用IExecute 一个支持保存/加载到xml的集合基类 以Xml格式保存到文件 从Xml文件(跟节点以下节点)加载到当前集合 从该父文档节点加载到集合 保存当前集合到该文档节点下 描述字段不保存到xml文件 描述字段不加载从xml文件 一个支持保存/加载到xml的基类 迭代查找实际集合类型 将当前数据保存到父节点 XML文档 XML父节点 当前类型属性数组 将集合数据保存到节点下 保存到节点 集合数据 将集合数据保存到节点下 保存到节点 集合数据 保存到XML文件 文件位置 从XML节点加载数据到当前对象 针对加载节点 当前类型属性数组 从XML节点加载集合数据 节点 加载目标的集合数据 集合中类型 从XML加载数据 文件位置 Dpi信息 x y x比值 y比值 表示二维空间中的点或偏移量 最低支持的客户端 Windows 7 wingdi.h (include Windows.h) 点或偏移量的水平分量。 点或偏移量的垂直分量。 包含有关设备的显示信息 用于确定要检索或设置的设备信息的类型。 检索或设置的设备信息的大小(以字节为单位)。此大小包括标头的大小以及标头后面的其他数据的大小。该设备信息取决于请求类型。 本地唯一标识符(LUID),用于标识设备信息包所引用的适配器。 要获取或设置其设备信息的源或目标标识符。 来自DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY枚举的值,用于指定目标的连接器类型 The manufacture identifier from the monitor extended display identification data (EDID). This member is set only when the edidIdsValid bit-field is set in the flags member. The product code from the monitor EDID. This member is set only when the edidIdsValid bit-field is set in the flags member. 仅当适配器具有多个此类目标时,此特定目标的基于一个实例的实例号。连接器实例是一个连续的基于一的编号,在每个适配器中都是唯一的。如果这是适配器上此类型的唯一目标,则此值为零。 显示设备数据 是否主屏 显示器列表 检索显示设备的当前设置。 检索当前存储在注册表中的显示设备的设置。 The device is part of the desktop. The device is part of the desktop. Represents a pseudo device used to mirror application drawing for remoting or other purposes. The device is VGA compatible. The device is removable; it cannot be the primary display. The device has more display modes than its output devices support. 枚举指定要通过DisplayConfigSetDeviceInfo或DisplayConfigGetDeviceInfo函数配置或获取的显示设备信息的类型。 指定显示设备的源名称。如果DisplayConfigGetDeviceInfo函数成功,则DisplayConfigGetDeviceInfo在DISPLAYCONFIG_SOURCE_DEVICE_NAME结构中返回源名称。 指定有关监视器的信息。如果DisplayConfigGetDeviceInfo函数成功执行,则DisplayConfigGetDeviceInfo在DISPLAYCONFIG_TARGET_DEVICE_NAME结构中返回有关监视器的信息。 指定有关监视器的首选模式的信息。如果DisplayConfigGetDeviceInfo函数成功执行,则DisplayConfigGetDeviceInfo在DISPLAYCONFIG_TARGET_PREFERRED_MODE结构中返回有关监视器的首选模式的信息。 指定图形适配器名称。如果DisplayConfigGetDeviceInfo函数成功执行,则DisplayConfigGetDeviceInfo在DISPLAYCONFIG_ADAPTER_NAME结构中返回适配器名称。 指定如何设置监视器。如果DisplayConfigSetDeviceInfo函数成功执行,则DisplayConfigSetDeviceInfo使用DISPLAYCONFIG_SET_TARGET_PERSISTENCE结构中的信息以引导持久方式强制输出。 指定如何为给定的目标ID设置基本输出技术。如果DisplayConfigGetDeviceInfo函数成功,则DisplayConfigGetDeviceInfo以DISPLAYCONFIG_TARGET_BASE_TYPE结构返回基本输出技术信息。 WDDM 1.3和更高版本支持在Windows 8.1和更高版本上运行的用户模式显示驱动程序。 强制将此枚举编译为32位大小。没有此值,某些编译器将允许此枚举编译为32位以外的大小。您不应使用此值。 Identifies the dots per inch (dpi) setting for a thread, process, or window. Invalid DPI awareness. This is an invalid DPI awareness value. DPI unaware. This process does not scale for DPI changes and is always assumed to have a scale factor of 100% (96 DPI). It will be automatically scaled by the system on any other DPI setting. System DPI aware. This process does not scale for DPI changes. It will query for the DPI once and use that value for the lifetime of the process. If the DPI changes, the process will not adjust to the new DPI value. It will be automatically scaled up or down by the system when the DPI changes from the system value. Per monitor DPI aware. This process checks for the DPI when it is created and adjusts the scale factor whenever the DPI changes. These processes are not automatically scaled by the system. 详情了解 -> https://docs.microsoft.com/zh-cn/windows/win32/hidpi/dpi-awareness-context Undocumented Undocumented Undocumented Undocumented win10 较早版本的操作系统上不可用 Undocumented dpi的类型 Effective dpi that incorporates accessibility overrides and matches what Desktop Window Manage (DWM) uses to scale desktop applications. Dpi that ensures rendering at a compliant angular resolution on the screen, without incorporating accessibility overrides. Linear dpi of the screen as measured on the screen itself. 显示状态 未知 2d状态 3d状态 左右画面的3d状态 上下画面的3d状态 帧画面2D 帧画面3D 分图画面2D 分图左右3D 分图上下3D 显示器数据 硬件ID名 设备名可能没有(杂牌显示器) 控制面板高级显示设置的友好名 矩形数据结构 构造函数 判断包含 x y 判断包含 范围矩形 缩放 x y 计算相交范围更新到当前 返回两矩形相交范围 矩形a 矩形b 是否相交 与判断对象 合并 矩形a 矩形b windows屏幕和显示器帮助类 仅电脑屏幕 双屏复制 双屏扩展 第二屏幕 ??? ??? 这些设置将保存在全局设置区内,因此它们对所有用户都有作用,该标志只有与CDS_UPDATEREGISTRY标志一起设置时才有效。 设置保存在注册表中,但不起作用,该标志只有和CDS_UPDATEREGISTRY标志一起指定时才有效。 即使请求设置与当前设置相同,也会改变设置。 该设备将成为原始设备。 如果请求的图形模要被设置,则系统进行测试,CDS_FULLSCREEN从本质上讲这种模式是暂时的。(对于Windows NT:如果改变到另一个桌面,或从另一个桌面改变,那么该模式将不被重置)。 当前屏幕的图形模式将动态地改变并且在注册表中图形模式将会更新,模式信息存储在USER描述文件中。 获取刷新率 设置刷新率 设置投屏模式 SDC_TOPOLOGY_INTERNAL SDC_TOPOLOGY_CLONE 克隆 SDC_TOPOLOGY_EXTEND 扩展 SDC_TOPOLOGY_EXTERNAL 是否是克隆模式 是否是扩展模式 设置克隆模式 设置扩展模式 设置仅电脑 设置仅第二屏 win10以上 监视器感知 InitProcessDpiAware / InitThreadDpiAware 将影响输出的值 友情提示SetWindowPos 参数对应MonitorInfo数据 outMonitor 对应工作区域 dd.m_DEVMODE 对应屏幕区域 设置主屏 获取主屏 获取非主屏设备集合 设备集合 返回坐标所在设备内部 设备集合 显示器坐标X 显示器坐标Y 枚举当前显示设备支持的所有显示设置 获取系统数据 索引 Windows 10, version 1607 [desktop apps only] Windows 10, version 1607 [desktop apps only] Windows 10, version 1607 [desktop apps only] Windows 10, version 1607 [desktop apps only] win8.1以上 进程仅能成功设置一次 S_OK:该应用程序的DPI意识已成功设置 E_INVALIDARG:传入的值无效 E_ACCESSDENIED:已经设置过了DPI感知 win8.1以上 win8.1以上 返回数据与设置的感知有关 支持最低版本 Windows 10, version 1607 [desktop apps only] 返回数据取决于窗口的感知 想要正确的监视器dpi数据 =>设置线程感知 初始化进程感知 仅能设置一次 后续将失败 这是查看是否是自定义缩放 修改需要注销 从注册表获取自己设置的DPI 显示器 设置显示设备Dpi 推荐值=0 Since I'm only testing three possible values 0, -2 (4294967294), and -1 (4294967295), only doing this three times. 0 would be the default for that monitor(could be 100% or 150%, there may be others, but 150% is afaik only for high-res modern laptop screens) -2 would be two options above default (e.g.my lenovo defaults at 150%, but offers 125% above, -1, 100% above that, -2 -- also 175%, 1, and 200%, 2) -1 would be one option above default (other monitors don't have 5 options like my lenovo, and might be 100%, 150% default, 200% -- hence -1, 0, 1) 显示设备 [?-?] 是否设置完刷新 设置分辨率 设备 像素宽 像素高 设置刷新率 呼叫者无权访问控制台会话。如果调用进程无权访问当前桌面或正在远程会话上运行,则会发生此错误。 触摸处理 3d模式下触屏响应坐标矫正到实际点击坐标 显示器范围 触屏响应坐标 输出左半屏响应位置 输出右半屏响应位置