2011-12-09 63 views
0

我有一块硬件可以使用FT2232C USB串行转换器与我的程序进行通信。如果设备之前已连接到计算机并且使用管理员帐户安装了驱动程序,则所有工作都可以正常进行。但这不是通常的情况。是否可以在没有管理员权限的情况下在Windows中安装USB串口转换器?

这些设备将被随意附加和删除,它也不会总是与特定计算机相同的设备。另外,大多数用户将不具有管理员权限,并且计算机未连接到局域网。

可以自动将文件推送到这些计算机并添加注册表项。

有没有人有任何关于如何让Windows相信设备驱动程序已安装的指针?我目前正在考虑跟踪驱动程序安装程序对Windows安装所做的所有更改,并在没有任何用户交互的情况下进行这些更改。但也许有一个更简单的方法?

我们目前正在谈论Windows XP,但在不远的将来,也会有越来越多的Windows 7(64位)计算机。

回答

1

尽管您可以通过自己对注册表进行所有更改(在SYSTEM帐户下,而不是常规管理员 - 您可以使用SysInternals PsExec来执行此操作)来“预安装”驱动程序,但这不会帮助您除非你预先安装所有可能的端口。 (只有具有嵌入式序列号的USB设备只能安装一次,其他安装在每个端口上。)

另一个选项是签署驱动程序。已签名的驱动程序将在无需管理凭据的情况下进行静默安装。

供应商驱动程序是否附带.cat文件? (是WHQL签名的.cat文件?)如果是的话,你没有问题。只需使用标准工具(例如DPInst)安装驱动程序即可。

如果不是,您可以随时生成您自己的WHQL证书(您不能购买WHQL证书),将其推送到所有计算机(因为您是管理员,您可以执行此操作),然后使用常规Windows工具例如DPInst)将驱动程序放置在机器的驱动程序商店中。要生成证书,请使用CertUtil.exe并确保指定“Windows系统组件验证”EKU。要签署驱动程序,请使用MakeCat.exe和SignTool.exe。

+0

希望这有帮助。我对所有这些实用程序的使用都非常简洁。 – Ilya

-2

与XP的最佳方法为timebeing是获得管理员密码的持有,我用下面的方法几个月前,它曾经辉煌过,有免费的软件,在这里可以说明:

http://www.loginrecovery.com/

+0

使用任何恢复工具获取管理员密码都不能解决问题。 IT部门已经知道管理员密码。 – dummzeuch

+0

啊,道歉误解了一点,在这种情况下,最好的办法是自动运行登录脚本,当用户登录检查驱动程序是否安装,如果不安装它们在这一点上。如果机器在登录时没有连接到局域网,那么您可能需要让用户可以根据自己的需要下载驱动程序并自行安装。 –

相关问题