【发布时间】:2023-03-10 12:53:01
【问题描述】:
我想创建一个简单的检查控制台应用程序,该应用程序应在启动时在开发人员的机器上运行并检查一些项目。这是为了确保所有开发人员都按照定期更新的预定义策略进行工作。
一切正常,除了这个控制台应用程序在 Windows 真正启动之前运行(用户尚未登录),并且我们的应用程序在某些地方遇到访问被拒绝的异常。
在this answer 中,建议我们要么将控制台更改为 Windows 服务,要么将其设为 Windows 计划任务,这在我们的情况下都不是可取的。
有什么方法可以检查 Windows 是否已完全启动,并且用户已登录(例如在 while 循环中),然后在 .NET 中继续执行代码?
【问题讨论】:
-
那么你现在如何开始呢?您听说过 Startup 文件夹吗?
-
“这是为了确保所有开发人员都按照预定义的策略工作” - 你一定有一些严重的信任问题。
-
您描述的场景是不可能的,控制台模式应用程序要求用户登录才能启动。也许您依赖的服务需要更长的时间才能启动,但只要您没有发布任何诊断信息,这只是猜测。