2015-09-03 26 views
2

我想知道是否有任何方式使用.NET如何可以以编程方式登录到窗口7,8桌面

例如,你这之前有一个服务登录到一个帐户窗口7,8台机器上开始做一些事情(等自动化窗口应用程序),你必须登录到这个帐户。

编辑:

我想窗口服务登录到用户Dekstop为能够运行我的任务

+3

你_exactly_想要做什么目前还不清楚。你的意思是你想要一个将用户登录到桌面的Windows服务?或者你的意思是你只想在有人登录桌面时开始你的服务? – CodeCaster

+0

我的不好!我希望窗口服务将用户登录到dekstop。 – pagratios

+1

为什么不简单设置自动登录? – CodeCaster

回答

0

有您可以编程登录窗口,没有使用凭据提供的一种方式。遵循以下步骤:

  1. 打开运行类型“netplwiz”取消选中“用户必须输入用户名和密码才能使用这台计算机”,最终将窗户自动登录框。

  2. 创建C#Windows登录形式,如下所示。或者,您可以根据需要创建您的表单作为第三方认证。我有我自己的登录身份验证。

    enter image description here

  3. 设置形式为 “最大化” 的窗口状态属性。

  4. 在按钮单击事件上,调用函数“Process.Start(@"C:\Windows\system32\userinit.exe");” userinit.exe是刚刚在Windows登录事件之后运行的可执行文件。这个exe通常位于“C:\ Windows \ system32”位置。

  5. 创建应用程序的EXE文件。

  6. 现在,打开注册表编辑器,定位到路径:

HKEY_LOCAL_MACHINE> SOFTWARE>微软> Windows>系统CURRENTVERSION> Winlogon中。

enter image description here

  • 与应用程序的你的exe文件替换USERINIT属性的路径,如图上面的图片。一旦自动登录完成的winform应用程序启动在我的情况“登录身份验证”,如图中的图片由我创建的窗体

  • 现在重新启动计算机。有一次,我输入用户名和密码,然后登录上的按钮,单击它exeutes的的userinit.exe,我重定向到桌面屏幕。

  • 因此,这是您可以创建第三方登录表单以根据您的应用程序要求登录到Windows机器的一种方法。