使用Powershell查找打开的Metro应用程序

使用Powershell查找打开的Metro应用程序,powershell,microsoft-metro,windows-8.1,Powershell,Microsoft Metro,Windows 8.1,我正在寻找一种方法,以编程方式查找当前使用Powershell在Windows 8 PC上运行的所有Metro应用程序。我相信有一个简单的方法,因为这些打开的应用程序会显示在任务管理器的“应用程序”部分下。我能够找到当前安装的所有应用程序,但不是所有正在运行的Metro应用程序 我不知道有什么API可以识别metro应用程序,但我认为这可能会满足您的需求: function Get-ModernAppProcess { $wildcard = "$env:ProgramFiles\Win

我正在寻找一种方法,以编程方式查找当前使用Powershell在Windows 8 PC上运行的所有Metro应用程序。我相信有一个简单的方法,因为这些打开的应用程序会显示在任务管理器的“应用程序”部分下。我能够找到当前安装的所有应用程序,但不是所有正在运行的Metro应用程序

我不知道有什么API可以识别metro应用程序,但我认为这可能会满足您的需求:

function Get-ModernAppProcess {
    $wildcard = "$env:ProgramFiles\WindowsApps\*" # Native Apps
    $wwa = "$env:windir\System32\WWAHost.exe"     # HTML+Javascript Apps
    Get-Process | Where-Object { $_.Path -like $wildcard -or $_.Path -eq $wwa}
}
请注意,您可能需要使用管理员权限运行此脚本,以标识所有正在运行的进程