【问题标题】:netsh http add urlacl problemnetsh http 添加 urlacl 问题
【发布时间】:2023-04-07 07:59:01
【问题描述】:

我正在尝试从 WIX 安装程序设置一些端口。对于 WinXP,我们在自定义操作中使用 httpcfg,这可以正常工作。对于 Win7,我们正在尝试:

netsh http add urlacl url=http://127.0.0.1/8346/ user="NT AUTHORITY\Authenticated Users" sddl="D:(A;;GX;;;AU)"

WIX 安装程序正确执行此语句并设置端口 - 对于运行 .msi 的管理员。权限较低的用户无法访问这些端口。我需要为机器上的所有用户设置它,但我已经尝试了所有我能想到的东西,但没有运气。

我觉得奇怪的是 Admin 用户可以使用 netstat -a 查看分配的端口,但使用 netsh http show urlacl 根本不会出现这些端口...这是否表明有问题?

【问题讨论】:

标签: wix netsh


【解决方案1】:

如果 8346 是你的端口号,你的语法应该是不正确的。

netsh http add urlacl url=http://127.0.0.1:8346/ user="NT AUTHORITY\Authenticated Users"

【讨论】:

  • 虽然答案是修正错字的真实陈述,但我看不出它是如何回答问题的。您可以对此信息使用评论。
  • 如果你想让它更简洁一些,你可以使用加号来避免输入任何地址,它是解析到本地机器的任何 IP 或名称的快捷方式,即“http: //+:8346/".
【解决方案2】:

您可以在安装文件中添加条件以在安装开始时提示输入 UAC。这将确保所有安装程序都由管理员启动,因此即使用户没有管理员权限,也会在防火墙中添加例外。

【讨论】:

  • 这似乎并没有回答这个问题,即使它可能是正确的。此外,此答案中没有具体内容。
  • 您需要使用支持引导程序 (Setup.exe) 的较新版本的 WIX 才能以管理员身份正确启动。否则,它仅在从管理员命令/进程通过 MSIEXEC 启动时才起作用。即使从 shell 中双击 Setup.exe,Bootstapper 也是保证您以管理员身份运行的唯一方法。添加启动条件来向用户/管理员日志解释失败的原因也很常见,而不是一些奇怪的失败消息,例如双击 MSI/没有 setup.exe 引导程序时。你不能“提示UAC”,只能通过另一个进程/setup.exe系统。
猜你喜欢
  • 2010-12-12
  • 2016-11-19
  • 1970-01-01
  • 2011-10-14
  • 1970-01-01
  • 2019-04-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多