在没有管理员权限的情况下运行:作为用户,我们可以做些什么来使应用程序正常运行(需要管理员权限)?

在没有管理员权限的情况下运行:作为用户,我们可以做些什么来使应用程序正常运行(需要管理员权限)?

由于以下问题,我被提示问这个问题:为什么 Windows 世界中的大多数人似乎仍然没有意识到以管理员身份工作是愚蠢的?

我们内心深处都知道,以管理员身份运行是愚蠢的行为,但我们能做些什么来减轻这种痛苦呢(也许痛苦是夸大其词)。

我承认我还没有尝试过在没有管理员权限的情况下运行,但如果我知道在应用程序崩溃时可以尝试的一些方法,我会更愿意尝试一下。

有些建议在上述问题中,这并不需要做太多的事情:

...即使如此,99% 的行为异常的应用程序也可以在 10 分钟内无需管理员权限即可运行。–奥利弗·吉森7月20日 15:28

那么,我们可以做什么或用什么来哄骗那些喜欢管理员权限的应用程序?是否有特定的应用程序会直接拒绝?我很想听到任何具体的例子和经验。

答案1

对于完全拒绝运行的应用程序Microsoft 应用程序兼容性工具包可能会有所帮助,它使您能够为单个应用程序定义修复。这包括当前兼容数据库已经用于(在 Vista 上)大约 5000 个应用程序的整个垫片范围。我设法让一个程序使用它,但它更像是在黑暗中摸索,而不是一种万无一失的方法。

答案2

最常犯的“错误”是要求应用程序以管理员身份运行,即应用程序需要对其 Program Files 文件夹具有写入权限。默认情况下,标准用户对该文件夹的写入权限是关闭的。

您可以通过相对简单的更改逐个启用此功能 - 只需右键单击文件夹,选择Properties,然后在选项Security卡下单击Everyone帐户并选中复选框以授予其写入权限。但当然,该更改还需要管理员权限(和 ntfs 文件系统)。

答案3

第二个最常犯的错误是应用程序向 Windows 注册表的 LOCAL_MACHINE 部分写入数据。任何应用程序都可以在此处读取数据,但要在此处写入数据则需要管理员权限。应用程序应仅将其用户设置保存到注册表的 CURRENT_USER 部分,因为普通用户可以在此处写入数据。

如果它正在将自己的配置数据写入 LOCAL_MACHINE,那么它可能是在 HKEY_LOCAL_MACHINE\Software\ 下的带有其(或其公司)名称的条目下执行此操作应用程序名称

要解决此问题,您可以右键单击带有软件名称的注册表项(文件夹)并选择安全,然后将权限分配给您的用户帐户或所有人帐户。

用于解决以标准用户身份运行应用程序的问题Sysinternals(现为 Microsoft)进程监视器非常有价值,它是一款非常强大的工具,可让您监控 PC 上发生的所有事情。这里不适合介绍如何使用它,但您需要为您感兴趣的应用程序设置一个过滤器,然后过滤权限和访问错误。

已编辑纠正进程监视器/进程资源管理器混淆

相关内容