【问题标题】:Azure CI Pipeline runs WPF Application in backgroundAzure CI 管道在后台运行 WPF 应用程序
【发布时间】:2021-08-21 03:52:31
【问题描述】:

我已经使用经典编辑器创建了 Azure CI 管道,其中我有打开 WPF 应用程序的命令行任务,现在的问题是当我将代理配置为服务时,这个 WPF 应用程序在后台运行时没有在前面显示界面,但相同的任务是代理未作为服务运行时正常运行。 我需要在运行代理即服务时打开 WPF 应用程序。

我也尝试使用用户帐户配置代理,但仍然面临同样的问题。 WPF 应用程序在后台运行。在任务管理器中显示应用程序正在运行但未出现在屏幕上。

例如:- 在命令下方,我正在写在 azure devops CI 管道的命令行任务中打开 exe。

**cd /D D:\Application_Build\Executable

启动 Sample.exe**

当代理不作为服务运行时,上述命令正常工作,但在将代理配置为服务时失败。

【问题讨论】:

  • 由于 Windows 会话隔离,当代理作为服务运行时,无法显示 WPF 应用程序。

标签: azure-devops


【解决方案1】:

当代理不作为服务运行时,上述命令可以正常工作,但在将代理配置为服务时失败。

根据您的描述,当您以交互模式运行代理时。代理将使用运行代理的用户的帐户运行。然后它将有足够的权限运行脚本。

当您将代理作为服务运行时,它将使用NT AUTHORITY\SYSTEM 帐户。

此帐户的权限受到限制。所以它可能会导致这个问题。

您可以使用管理员帐户或您的用户帐户创建代理。

.\config.cmd --unattended --url https://myaccount.visualstudio.com --auth pat --token myToken --pool default --agent myAgent --runAsService --windowsLogonAccount myDomain\adminccount --windowsLogonPassword Password

另一方面,您可以导航到本地系统->服务并找到正在运行的代理服务。

然后您可以将logon account 更改为管理员帐户。

这是一个关于 create agent 的文档。

【讨论】:

  • 我尝试使用用户帐户配置代理,但仍然面临同样的问题。 WPF 应用程序在后台运行。在任务管理器中显示应用程序正在运行但未出现在屏幕上。
猜你喜欢
  • 2021-04-06
  • 2011-04-02
  • 2020-08-06
  • 2023-04-10
  • 1970-01-01
  • 1970-01-01
  • 2014-01-10
  • 2011-09-11
相关资源
最近更新 更多