32位Go Binary需要权限提升,64位不需要

时间:2017-01-17 18:07:30

标签: windows go uac

使用GoLang 1.7.4,我正在为我的应用程序构建一个二进制文件,其目标是windows / amd64,这个二进制文件构建正常并且在运行时,不会导致出现UAC提示以进行权限提升。

我切换到为windows / 386构建二进制文件,但是当构建二进制文件时,它现在需要权限提升,使其更加奇怪,如果我使用不同的名称为windows / 386构建二进制文件,则不需要升级的特权要运行,但是一旦我将二进制文件重命名为通常构建的名称(重命名在Windows资源管理器中完成),它就会突然再次需要升级的权限。

这一切都是在Windows 10 64位计算机上完成的,任何想法到底是怎么回事?

1 个答案:

答案 0 :(得分:3)

根据文件名,Windows自动需要提升应用程序权限。它会检查文件名以查看是否有安装程序,因此需要在“32位”应用程序上提升具有“Setup”或“Update”等名称的文件。