在Windows 7 Embedded下访问被拒绝注册DLL

在设置Windows 7 Embedded系统时,我需要运行一些老的安装程序来注册DLL。 这些都是失败的 – 一些有错误,一些只是退出,没有显然做任何事情。 一个安装程序报告说,注册DLL失败(即使以pipe理员身份login)。 尝试使用regsvr32来手动注册它收到错误0x80070005 E_ACCESSDENIED的DLL报告。

更奇怪的是,其中一个安装程序最近足以在普通用户运行时发出UAC提示 – 然后继续安装而不会出现问题。 以pipe理员身份运行时,同一个安装程序在注册DLL时失败。

我想pipe理员帐户有什么问题,但我没有足够的Win7经验来猜测(而且没有explorer壳,如果不知道你正在寻找什么,就很难find它)。 我不需要任何pipe理员帐户,所以我很高兴find一种方法来强制旧的安装程序以UAC提升的权限运行。

那么,首先尝试彻底closuresUAC (并重新启动)来运行安装程序,这将解决问题,如果问题是由UAC引起的。

另一种可能性是这些旧的安装程序和/或。 dll的是不是(完全)与Windows 7兼容。在这种情况下,我build议不要强迫它…因为如果你设法得到东西安装,你将不得不支持一个不太兼容程序在一个不太兼容的操作系统上,直到你死后6个月。

如果来自曾经在那里的人,最好只是说不nope, not compatible ,让老板要么购买一些东西来处理你的东西,要么站起来这个应用程序工作的旧操作系统,然后用它来安装它在。 (当然,“买新东西”是一个更好的select。)