UAC对我的应用程序造成了问题

3

我正在为我的应用程序制作安装程序,在XP上运行良好,但在Vista上,除非我以管理员身份运行,否则UAC会出现问题。当我在安装后运行我的应用程序时,出现意外错误,有什么想法吗? 我将应用程序安装在C:\ xfolder \ x中。

2个回答

3

你没有别的选择。你必须以管理员身份运行 安装程序

至于应用程序,你也需要使用提升的特权以管理员身份运行,但是有一些选项可以通过应用程序清单自动请求权限提升。你可以在 stackoverflow.com 上搜索,因为与此问题相关的帖子更多。

这里有一个链接可能会有所帮助。

以下是几个有用的应用程序清单和用户账户控制 (UAC) 链接:

UAC 技术。

它们是用 C# 编写的,但是将它们转换为 VB.net 就像散步一样简单。

你可以创建一个 Windows 服务,并将所有需要提升权限的操作放入该服务中。你将服务安装为 SYSTEM 账户,并通过 .NET 远程调用或任何其他方式与客户端通信,以实现与 vb6 的集成。


@jaminator 当然可以。这与编程语言无关。清单实际上是一个具有特定元素的 XML 文件。 - Liviu Mandras
Liviu,我已经将清单嵌入到我的exe文件中了,感谢你的帮助。但问题是,如果我的应用程序用户在没有管理员权限的计算机上使用该应用程序,那么该用户如何提升为管理员以运行该应用程序。这是一个关键点。 - PUG
我用传统的VB6制作了一个应用程序,想在Win 7上运行它,但是UAC不允许我在安装后运行该应用程序,除非我以管理员身份运行。因此,我制作了一个清单文件,并使用资源编辑器将其嵌入到exe中。现在Win 7可以运行该应用程序,但每次运行应用程序时都会询问是否允许或不允许。 我该怎么办? - PUG
我曾经发布过一个类似的问题,但由于它是一个“巨大的安全”风险,我只得到了负面评价。但无论如何,我还是会给你提供这个想法。请查看编辑。 - Liviu Mandras
请看答案中的最后一段。我提到的解决方案被归类为“安全”风险。我将其作为对你另一个类似问题的回答。 - Liviu Mandras
显示剩余4条评论

2
如果您的应用程序exe是一个active x exe,则需要使用regsvr命令注册所有ocx文件,然后使用regsvr32命令注册您的exe。要在Win Vista中使用active class,它必须首先被注册。制作一个批处理来执行这些注册过程。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接