是否有某种方法可以从提升的方式以非提升的方式启动流程。我的设置启动提升,当它完成时,它只会启动主应用程序。由于设置已提升,因此主进程也会提升,这是不可取的。最好的解决方案是什么? 最佳答案 这是个问题,Vista/Win7似乎没有API来获取调用CreateProcessAsUser()所需的非特权用户token。我发现的唯一解决方案涉及使用任务调度程序来启动程序。我觉得这不太实用。我想到的一个简单的解决方案是使用一个小型的非提升的辅助进程。它可以依次启动提升的设置过程并等待该过程的确认以启动非提升的设置过程。握手非常简单,可以使用
我正在尝试弄清楚是否有一种方法可以使用SetWindowsHookEx并能够影响在启用了UAC的Vista上以管理员权限运行的应用程序。这是一个需要向其他窗口的标题栏添加一个小按钮以启用一些多显示器感知处理的应用程序。我原以为这不可能完成,但我看到一个应用似乎可以做到这一点。据我所知,其他应用程序没有以管理员权限运行,但它会影响系统中的所有应用程序,包括那些具有管理员权限的应用程序。看来似乎有办法做到这一点,但我不知道该怎么做。我的应用程序只需要能够在窗口标题栏上绘制并能够影响它们的移动和大小。我不需要做任何其他事情。 最佳答案 您
我使用izpack制作了一个安装程序,它被打包为一个可执行的jar文件。通常,当我双击jar/installer文件时,会弹出Windows7UAC框,我在安装应用程序时授予临时管理员权限(我的UAC级别是第二低的)。但由于某种原因,当我双击jar文件时,此框不再弹出。因此,当安装程序尝试安装Windows服务时,我收到错误“拒绝访问”(在此过程中,注册数据库中设置了一些key)。关于如何让Windows将jar文件识别为安装程序并像以前一样弹出UAC框的任何想法?如果我在管理员模式下打开cmd并cd到jar文件并从那里运行它,它工作正常。但让它以另一种方式(正确的方式)工作可能会很好
我们终于开始着手将我们软件的文档从程序自己的目录中移出并移至“我的文档”中。我们还在list中添加了“requestedPrivileges”行,以防止虚拟化出现更多问题。但是,如果我们只这样做,那么在Vista/7中运行旧版本的任何人都可能在更新后丢失隐藏VirtualStore目录中某处的工作。那么,迁移到21世纪的首选方式是什么?坦率地说,我对四处复制文件有点谨慎,尤其是因为我似乎无法找到进入影子目录的编程方式,但想必很多其他人在我们之前遇到过同样的问题。 最佳答案 不要添加requestedPrivileges,除非您合法地
我有一个需要执行驱动程序安装程序exe文件的java应用程序。在Linux上,我们键入“gksudomyCommand”。有没有办法从Windows命令行提升权限? 最佳答案 您可以使用不同的用户在Windows中运行每个应用程序,例如行政人员。但是执行此命令的用户需要具有执行此操作的凭据。编辑:您可以提前查找Windows7和Vista中提供的用户帐户控制(UAC),如果它可能适合您的话。 关于windows-Windows7的权限提升?,我们在StackOverflow上找到一个类似
我已经为我的软件制作了安装程序(使用InnoSetup),最终安装在C:\ProgramFiles(x86)\MyApp\myapp.exe像往常一样在Windows平台上运行,并且运行良好。当我的软件试图在此处写入其配置文件时出现问题:C:\ProgramFiles(x86)\MyApp\myapp.cfg这里出现了一个Permissiondenied错误!我找到的唯一解决方案是“以管理员身份运行软件”,但我不喜欢这个解决方案:我不想让最终用户每次都必须执行“以管理员身份运行”他们将使用该软件。是否有一个干净的解决方案可以在C:\ProgramFiles(x86)\MyApp\mya
有没有办法标记.EXE以请求它以管理员身份运行?这样:如果UAC设置为以管理员身份运行且没有提示-它以管理员身份运行。如果用户无法以管理员身份运行(需要不同的登录名),则以用户身份运行。如果提示,提示用户。如果接受,则以管理员身份运行。如果提示被拒绝,则以用户身份运行。我知道如何使用2个.exe程序执行此操作。但我想用一个来做。该程序输入用户的许可证key。在HKLM中,如果应用程序具有管理员权限(因此所有用户都拥有key)。如果没有管理员权限,则在HKCU。 最佳答案 如果用户拒绝提升提示,则无法标记可执行文件以使其在没有管理员权
我最近注意到我们开发的一个应用程序在我们的一些客户的PC上旁边有WindowsUAC图标,但我们的没有。有什么原因可能会发生这种情况吗?我注意到这一点的原因是客户声称软件突然停止工作,在检查他们的PC时,我注意到UAC“盾牌”出现在我们应用程序的图标上——我以前从未见过,而且肯定是当我将它安装到我的PC上时不存在,所以我想知道是否对他们的PC进行了任何更改导致了此问题,这是否与应用程序停止工作的原因有关? 最佳答案 如果有人感兴趣,这里是问题的原因和解决方案。客户端以某种方式告诉程序始终以管理员身份运行,这就是UAC消息的原因,并以
我有兴趣在临时session中启动一个窗口,例如UAC提示的显示方式。一些人对这个概念有些兴趣,所以我想我应该在这里问一下。本质上,我们想要的是一个提升的窗口,例如UAC“您确定要”提示,但具有任意窗口。最终目标是防止窗口事件Hook和密码输入期间可能发生的各种其他问题。我快速浏览了UACAPI和其他一些地方,但没有什么特别有用的地方。显然,UAC提示以某种方式以某种方式提升到它们自己的桌面session,因此必须有一种方法以这种方式创建窗口。 最佳答案 您可以使用CreateDesktop创建桌面.您可以使用SwitchDeskt
我想在目标机器上跟踪系统范围内的设置-它是一个运行时间计数器,用于跟踪我的客户端运行我的软件的次数。我决定将这个值放在注册表中,但我真的想跟踪它在整个系统中运行了多少次,而不仅仅是当前用户帐户。我希望使用HKLM在机器级别跟踪它,但现在UAC不喜欢这样。是否有正确的方法来读取和写入机器范围内的设置? 最佳答案 HKLM不适用于此类用途(至少从WindowsXP开始)。改用%PROGRAMDATA%文件夹(您也可以通过WinAPI函数SHGetKnownFolderPath和FOLDERID_ProgramData获取(SHGetFo