【发布时间】:2015-07-28 04:26:36
【问题描述】:
我们有一个实际检查文件夹内容的 exe,然后启动 Windows 服务对该文件夹中的文件进行一些处理。 因此,我们将此 exe 作为系统启动程序的一部分,以便在每次系统重新启动/启动时运行。
现在用户非常恼火,因为他每次重新启动时都会弹出 UAC。但是我们需要拥有这个exe的管理员权限,因为它启动了一个windows服务。因此,我研究并为这个问题找到了几个解决方案。 This 和 This 但无法决定哪个更好,更不易受到安全影响。 另一种可能的解决方案是 .exe 本身的代码检测系统启动,如果我们在目标文件夹中有任何内容,则只向用户询问 UAC 并启动 Windows 服务。否则只是不运行exe。我不确定如何在 C++ 中执行此操作。任何指针都会有所帮助。如果有更好的解决方案,欢迎随时欢迎。
【问题讨论】:
-
为什么要从应用程序启动服务?为什么不让 windows 启动服务并从应用程序向它发送消息?
-
你能否详细说明一下..
-
您是否意识到,如果您将服务配置为自动启动,Windows 会在每次系统启动时为您启动它?从你的帖子中看不出你为什么想要一个应用程序。为什么不只提供服务而不提供其他服务?
-
这充当父应用程序和 Windows 服务本身之间的接口......它向用户显示该服务将对文件夹内容进行的处理状态......
-
第一个链接(禁用 UAC)比 UAC 警告更让我生气。事实上,关闭安全功能可能会让您对任何后续的安全问题负责。