让windows
获取有关 活动窗口 并打开窗口(标题,id,边界,所有者,URL等)
适用于macOS 10.14+、Linux (请注意),以及Windows 7+。
安装
npm install get-windows
使用
import {activeWindow} from 'get-windows';
console.log(await activeWindow(options));
/*
{
title: 'Unicorns - Google Search',
id: 5762,
bounds: {
x: 0,
y: 0,
height: 900,
width: 1440
},
owner: {
name: 'Google Chrome',
processId: 310,
bundleId: 'com.google.Chrome',
path: '/Applications/Google Chrome.app'
},
url: 'https://sindresorhus.com/unicorn',
memoryUsage: 11015432
}
*/
API
activeWindow(选项?)
获取有关活动窗口的元数据。
选项
类型: object
accessibilityPermission (仅macOS)
类型: boolean
默认值: true
启用可访问性权限检查。将其设置为 false 将阻止macOS 10.15及更新版本上的访问权限提示。这个 url 属性将无法检索。
screenRecordingPermission (仅macOS)
类型: boolean
默认值: true
开启录影权限检查。将其设置为 false 将阻止macOS 10.15及更新版本上的屏幕录制权限提示。这个 title 属性将始终设置为空字符串。
activeWindowSync(选项?)
同步获取有关活动窗口的元数据。
结果
返回一个 Promise<object> 结果,或者 Promise<undefined> 如果没有活动窗口或信息不可用。
platform(字符串) -'macos'|'linux'|'windows'title(字符串) -窗口标题id(数量) -窗口标识符bounds(对象) -窗口位置和大小x(数量)y(数量)width(数量)height(数量)
contentBounds(对象) —窗口内容的位置和大小,不包括标题栏、菜单栏和框架 (Windows)x(数量)y(数量)width(数量)height(数量)
owner(对象) -拥有窗口的应用程序name(字符串) —应用名称processId(数量) -进程标识符bundleId(字符串) - Bundle标识符 (仅macOS)path(字符串) -应用的路径
url(字符串) —如果当前窗口是支持的浏览器,则显示当前窗口页签的URL (仅macOS)- 支持的浏览器:Safari(包括技术预览),Chrome(包括Beta, Dev和金丝雀),Edge(包括Beta, Dev和金丝雀),Brave(包括Beta和Nightly), Mighty, Ghost Browser, Wavebox, Sidekick, Opera(包括Beta, Developer和GX),或Vivaldi
memoryUsage(数量) —窗口所有者进程的内存使用情况
openWindows ()
获取所有打开窗口的元数据。
窗户按照从前到后的顺序返回。
返回 Promise<Result[]>.
如果无法读取窗口列表,则数组为空。
openWindowsSync ()
同步获取所有打开窗口的元数据。
窗户按照从前到后的顺序返回。
返回 Result[].
如果无法读取窗口列表,则数组为空。
操作系统支持
它适用于macOS 10.14+, Linux和Windows 7+。
注意在Windows上,没有一个“窗口ID”的明确概念。方法中窗口“句柄”的内存地址 id 财产。该“句柄”在每个窗口中是唯一的,因此可以使用它来识别它们。 阅读更多…
Linux支持
韦兰不被支持。出于安全原因,Wayland没有提供识别活动窗口的方法。 阅读更多…
使用电子
如果您在电子应用程序中使用这个包是沙盒的,并且您希望获得 .url 属性,则需要添加 适当的权利和用法描述.
用户
- active-win-log —窗口使用日志命令行。
- active-app-qmk-layer-updater -发送活动的应用程序信息到QMK设备自动改变键图层。
相关
- windows-cli -该包的CLI
开发
绕过 gyp 构建:
npm install --ignore-scripts
- 调试日志:设置
DEBUG_GET_WINDOWS=1将Linux窗口枚举错误和汇总计数记录到控制台。
cjser
这个包是由cjser为仍然需要的项目生成的commonjs兼容的构建 require() 支持。源版本与原始的npm包版本匹配,对这个生成的构建带有cjser预发布后缀。
原始存储库: https://github.com/sindresorhus/get-windows