Power Automate 流程中的非阻塞 Powershell 脚本

Non-blocking Powershell script inside Power Automate flow

我在 Power Automate Desktop 流程中有一个非常简单的 Powershell 脚本。该脚本启动桌面应用程序(只是一个 mstsc 命令)。到目前为止,一切都很好。我的问题是如何 运行 脚本是非阻塞的,或者如何分支流程和 运行 另一个并行分支(如果这可能的话),所以我可以继续 运行 流程的进一步步骤,我在打开的应用程序中抓取对象 window 以执行某些任务。我的流程没有 运行 超出 Powershell 脚本步骤,因为应用程序仍在 运行ning,因此流程永远保持 运行ning 该步骤。只要我关闭应用程序 window,流程就会继续执行。有什么想法吗?

某些 programs/commands 必须终止,Powershell 脚本才能继续执行。

通过使用 Start-Process cmdlet,您可以更好地控制此行为,而不必等待 return 代码。 (如果需要使用 Start-Job、Invoke-Command 等在单独的线程中启动它,您也可以 运行 它作为一项工作)

我将以cmd.exe为例,尽管还有其他方法可以解决这个问题:

# This portion of code will wait for cmd.exe to be closed in order to continue
Write-Host "launching cmd.exe..."
cmd.exe
Write-Host "cmd.exe is closed, script will continue..."

# This portion of code will NOT wait for cmd.exe to be closed in order to continue
Write-Host "launching cmd.exe..."
Start-Process cmd.exe
Write-Host "cmd.exe is not closed but script continues..."