Max*_*r88 3 .net c# windows windows-services
可能重复:
在登录Windows之前如何启动WPF应用程序?
我用C#编写了一个应用程序.我想在登录Windows操作系统之前运行我的应用程序(在Windows操作系统预加载之后).我怎样才能做到这一点?
执行此操作的唯一方法是创建Windows服务而不是应用程序.由于服务不是用户模式应用程序,因此即使没有用户登录也允许它们运行.
但是,这还有其他一些警告.大多数开发人员只学习上述内容并认为他们需要编写Windows服务.这是不正确的:实际上,您实际上需要编写其中一个是非常罕见的.如上所述,它们不是用户模式应用程序,因此无法显示任何类型的用户界面.它们被设计为仅在后台运行,并且用户不需要以任何方式与它们交互,除了[很少]停止和启动它们.
如果您已经有一个带有用户界面的常规应用程序,则无法为您创建Windows服务.您的应用程序不会移植到服务,您将回来询问有关看似无法解释的行为,系统崩溃以及无法执行各种操作的六个问题.服务不是应用程序的替代品:它是一种完全不同的产品,需要完全不同的设计方法.
那么你有什么选择呢?好吧,基本上没什么.Windows是一个多用户操作系统.没有用户登录,无法运行用户模式应用程序.您可以做的最好的事情是将您的应用程序添加到所有用户帐户共享的"Startup"文件夹,然后将该计算机配置为在启动时自动登录特定用户.这样,在没有用户登录的情况下,计算机将永远不会运行,因此也不会运行您的应用程序.
为此,您需要在计算机上配置组策略,这将要求您具有对它们的管理访问权限,并且不适用于您不拥有的计算机(例如属于客户的计算机).这实际上是一件好事,因为这是一个非常糟糕的设计,适用于一般用途的应用程序.
在我们为系统管理员设计的姊妹网站上提出有关设置组策略的更多问题,服务器故障.
| 归档时间: |
|
| 查看次数: |
3154 次 |
| 最近记录: |