You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用WindowsVirtualDesktopPowershell Cmdlets启动全桌面显示应用

WindowsVirtualDesktopPowershell实现应用启动时全局显示

WindowsVirtualDesktopPowershell库完全可以实现你的需求——它封装了Windows虚拟桌面的核心COM API,支持直接操控窗口的跨桌面显示属性。

以下是双击即可运行的PowerShell脚本,启动应用后自动将其设置为“在所有桌面显示”模式:

# 检查并安装WindowsVirtualDesktopPowershell模块(首次运行需要)
if (-not (Get-Module -ListAvailable -Name WindowsVirtualDesktopPowershell)) {
    Write-Host "安装WindowsVirtualDesktopPowershell模块..."
    Install-Module -Name WindowsVirtualDesktopPowershell -Scope CurrentUser -Force -AllowClobber
}

# 导入模块
Import-Module WindowsVirtualDesktopPowershell -Force

# 配置目标应用:替换为你的应用路径和启动参数
$appPath = "notepad.exe"  # 示例:记事本,可改为"chrome.exe"或完整路径如"C:\Program Files\XXX\XXX.exe"
$appArgs = ""             # 应用启动参数(无则留空)

# 启动应用并等待其加载
$process = Start-Process -FilePath $appPath -ArgumentList $appArgs -PassThru
Wait-Process -InputObject $process -Timeout 5  # 等待5秒确保窗口初始化

# 获取应用主窗口句柄
$windowHandle = $process.MainWindowHandle
if ($windowHandle -eq 0) {
    Write-Host "错误:无法获取应用窗口句柄,可能应用启动过慢,请延长超时时间"
    exit 1
}

# 设置窗口为全局显示(在所有桌面可见)
Set-WindowShowOnAllDesktops -WindowHandle $windowHandle -ShowOnAllDesktops $true

Write-Host "操作完成:$appPath 已设置为在所有虚拟桌面显示"

使用说明:

  1. 将脚本中的$appPath替换为你需要启动的应用路径(支持相对路径或绝对路径),如果应用需要启动参数,填写到$appArgs中。
  2. 保存脚本为LaunchAppGlobal.ps1文件。
  3. 首次运行时,可能需要调整PowerShell执行策略:右键以管理员身份打开PowerShell,执行Set-ExecutionPolicy RemoteSigned -Scope CurrentUser,按提示选择Y确认。
  4. 双击脚本即可启动应用并自动设置全局显示。

注意事项:

  • 如果应用启动耗时较长,可将Wait-Process的-Timeout参数值调大(单位:秒)。
  • 部分后台运行的应用可能没有主窗口句柄,这类应用无法设置全局显示。

内容的提问来源于stack exchange,提问作者Daniel Kaplan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 22:13:25