不为特定用户创建后台工作者

Not creating background worker for a particular user

我有一个用 C# 制作的桌面应用程序。该应用程序通过 SSH 连接到 Solaris 服务器并在那里执行某些作业。应用程序的登录基于用于登录 Solaris 服务器的用户凭据。当用户输入他的 Solaris 凭据时,它会访问服务器并检查凭据是否正确。

问题是,应用程序在后台工作程序中运行作业。对于大多数用户,应用程序运行良好,但对于特定用户,myworker.RunWorkerAsync() 不起作用,这意味着控件永远不会传递给 do_work。

我试过在不同的机器上调试它,但结果还是一样。因此,这不是系统特定的问题,但我无法理解,为什么每个人都能正确创建并运行后台工作程序,但仅针对特定用户却没有。

如果它对除一两个人以外的所有人都有效,那么您需要检查这些人的帐户。它们要么无法正常工作/已禁用,要么配置与其他配置不同。

尝试区分工作用户和非工作用户的个人资料,看看有什么不同,然后尝试协调它们。

另一种方法是使用失败的帐户并尝试应用程序通过您最喜欢的 ssh 工具手动执行的所有确切步骤。

此外,请始终确保正确捕获错误:Unhandled exceptions in BackgroundWorker