2010-02-23 73 views
2

@UPDATE:

OK FOR谁比谁征求意见在这个问题上...


到目前为止,最好的事情我发现是自己下载一个pGina(http://www.pgina.org/)的cpy和2k/xp修改GINA,并且对于vista/win7,您将需要创建自定义登录凭据(pGina具有与vista/win7体系结构接口的工具/示例)。

确认 - 看来,这是Novell公司与VISTA/WIN7而不是替换GINA的传统方法做(如在2K/XP)

如果别人来了一个办法在win7的登录屏幕上运行一个应用程序,请张贴它。谢谢你的帮助和输入。更新:与窗户上的用户登录界面交互



'------------------------------------------ ---------------------------------------

好吧即时通讯写一些vb6软件,在用户登录到系统之前需要输入。

基本上我想运行一个应用程序在用户可以与程序进行交互的Windows登录屏幕。目前我的应用程序作为服务运行,允许与桌面进行交互,但现在仍在显示。

有没有人有任何其他想法得到这个工作。我知道“允许服务与桌面交互”可以在windows 2000/xp下运行,即时运行Windows 7 - 我也知道服务不能直接与Windows Vista的用户交互 - 说到这一点,有没有其他方法让我的应用程序在登录屏幕上运行。 Novell公司做:)提前

+0

对于Vista之前的系统,您可以实现一个GINA,如果需要可以完全替代登录界面。有关更多信息,请参见维基百科文章:http://en.wikipedia.org/wiki/Graphical_identification_and_authentication 但是,Vista/Windows 7似乎不是现在可以实现的,但这可能为进一步提供一个良好的开端调查。 – 2010-02-23 12:04:41

回答

3



干杯你只能这样做,如果你是验证自己的凭据。在Vista之前,这是通过GINA完成的,但是从Vista开始,您需要编写自己的Credential Provider

背后的原因深藏在安全原则中--Ctrl-Alt-Del只会启动与登录等相关联的窗口站,并且没有其他应用程序可以进入该窗口站(所以你例如,不能在顶部创建一个伪造的密码框来抓取密码)。

不知道为什么你认为你的服务需要与桌面进行交互,这很难提供进一步的建议,但这可能意味着你的设计在某种程度上被打破了。

+0

基本上我有一个应用程序,这是一个专有系统,根据已登录的用户将专有网络驱动器映射到系统。我想要在登录屏幕上运行的程序允许配置一些所需的关键选项在用户登录之前设置。某些网络登录脚本依赖于要在登录屏幕上运行的程序的设置。 我知道GINA有2k/xp,但xp不再是一个选项。编写我自己的Credential Provider需要多少工作?这将重新创建登录屏幕? – 2010-02-23 12:23:42

+0

@neddy你不能通过AD和登录脚本实现这一点吗?或者,对于同一台机器,这些设置是否改变? – 2010-02-23 12:39:25

+0

不会改变每个用户/个人电脑 - 基本上它就像一个迷你的novell系统,将用户驱动器映射到系统。 - 所以一些广告和登录脚本依赖于由该系统映射的驱动器...... – 2010-02-23 12:47:54

2

服务隔离可能会阻止您通过服务执行此操作。

pre-vista Novell之类的可能会使用GINA,它在Vista中被替换; http://msdn.microsoft.com/en-gb/magazine/cc163489.aspx

+0

Vista/Win7之前使用GINA取代登录 - 我已经研究了几个星期现在:/ – 2010-02-23 12:24:37

0

我知道的唯一方法是编写自己的msgina.dll。

虽然在测试过程中它可能会变得危险。任何错误都可能会让您的操作系统变得糟糕,以至于需要彻底重新安装。

+1

纠正我,如果我错了,但对我的理解msgina.dll是赢得Vista/7的时间更长。 – 2010-02-23 12:25:25

+0

我已经工作了几年。 让企业用户安装这样一款野兽是一件难事,所以我们放弃了这个想法。 – 2010-02-23 12:51:10

+0

@neddy - 你是对的,因为GINA在Vista和更高版本中被抛弃,并被微软的证书提供商青睐。 – 2012-10-18 12:21:35