不像听起来那么愚蠢;)
我有一个没有来源的第三方应用程序。官方支持 XP 及更高版本 - 但仅在关闭 UAC 时更高。这是我不想要的。
现在,我认识程序员,如果工作量不大,他们愿意做出改变,我可以告诉他们需要做什么。
我知道启动多个可执行文件的应用程序在没有提升权限的情况下启动它时不会获得网络连接 - 但似乎没有打开的端口在 loer 范围内(根据 netstat -b
是否有任何指南可以尝试找出应用程序需要提升权限的原因?该应用程序对业务至关重要 - 这目前颠覆了安全性,因为用户必须是本地管理员。如果有人有想法 - 一旦我找到原因,我确信我可以让供应商实施更改。
根据其中一条评论,您最好的选择可能是使用 Sysinternals 的 Process Monitor 来查看正在尝试的内容以及由于 UAC 而失败的内容。
从http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx下载进程监视器
运行进程监视器,运行你的无聊、过时、编码错误的应用程序,转到进程监视器>过滤器>
if Process Name is <borkedapp> then Include
,if Result is Success then Exclude
它应该只给你几千个条目来扫描失败的位。或者,下面链接了一个工具(我没有尝试过),它可以帮助您比较进程监视器跟踪,以便您可以获取作为标准用户运行的跟踪和另一个运行提升的跟踪并比较它们。
http://forum.sysinternals.com/tool-for-comparing-procmon-traces_topic28870.html
https://github.com/patraulea/LogDiff
t除了 Blue 的回答之外,还有用于将应用程序迁移到 Windows 7 的工具。即使您的应用程序说它与 Windows 7 兼容,但通过此振铃器运行它会告诉您应用程序需要什么才能在 UAC 上正确运行。您甚至可以创建一个“垫片”,在您的应用运行时修改某些设置。我相信该工具称为标准用户分析器http://technet.microsoft.com/en-us/library/cc766021(v=ws.10).aspx。
我还要补充一点,很多时候可以通过授予适当的权限来避免提升权限,即授予用户对 C:\Program Files\ 文件夹和子文件夹的修改权限。