【问题标题】:Running EXE file without administrator privileges在没有管理员权限的情况下运行 EXE 文件
【发布时间】:2014-03-19 00:45:58
【问题描述】:

我已经使用 installshield 创建了一个 Word 加载项 setup.exe 文件,我正在尝试了解如何在不需要管理权限的情况下安装它。此外,我需要静默安装(无 UI)。我能够通过从可执行文件中提取 msi 文件并使用它运行它来使其工作

msiexec /i setup.exe /passive

这在我的机器上完美运行,但它不适用于客户端系统中的任何其他用户。客户端使用不同的系统,因此当我尝试相同的命令时,我看到文件已添加到我的程序文件中,但它不在我的已安装程序列表中,并且未设置注册表项。我无法对他们的系统进行任何更改,所以我试图找到一种方法来绕过它,无论是第三方程序还是我可以在命令提示符下使用的小作弊。

我尝试了以下方法:

  • 在运行上述命令之前关闭 UAC。
  • 我已从清单文件中删除了该节点。
  • 命令提示符中有许多命令。

还有其他人对我如何解决这个问题有任何其他建议或想法吗?

谢谢!

【问题讨论】:

    标签: windows cmd exe installshield uac


    【解决方案1】:

    如果您的应用安装到系统中普通用户没有权限的区域,则需要管理员访问权限。如果您希望能够在没有管理员权限的情况下安装它,它应该安装在他们自己的用户文件夹下(想想 %appdata%)。谷歌浏览器就是一个例子。

    【讨论】:

    • 这是有道理的,因为它试图安装在他们的程序文件下。您是否知道如何设置一个始终查看当前用户的 appData 而不必将用户名放在文件路径中的目录?
    • 您可以使用环境变量 %appdata% 并从那里转到 ..\local 。例如在我的机器上 APPDATA=D:\Users\{username}\AppData\Roaming,一旦我知道了,我就可以创建 APPDATA=D:\Users\{UserName}\AppData\Local\MyApp,除非你想让你的应用程序也可以漫游
    • 我在 AppData\Local 目录中为我安装了可执行文件。这很好用,我已经提取了 msi 文件,它也很好用。我需要运行静默安装,所以我检查以确保我可以为 msi 运行静默安装,并且效果也很好。但是当我在他们的系统上尝试时,它仍然无法正常工作。我认为它会起作用,因为 AppData 在向其添加任何内容时不需要管理员访问权限。感谢您的建议,如果您有任何建议,我愿意接受更多!
    • 您是否能够详细记录安装过程并通过 msiexec 开关确定安装的位置?
    • 我得到了工作日志和坏日志。两者都说它安装正确(安装返回值 1)。它的行为是否会有所不同,并且可能需要损坏的机器重新启动机器,而我的机器没有?我看到 RebootYesNo = Yes,但我通常不必重新启动。我无法重新启动我正在使用的机器,所以我不得不询问客户。日志中是否有我应该特别查看的内容?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-15
    • 1970-01-01
    • 2022-09-28
    相关资源
    最近更新 更多