6

我需要在我的应用程序包安装中被动安装 Python,所以我使用以下内容:

python-3.5.4-amd64.exe /passive PrependPath=1

据此:3.1.4。在没有 UI 的情况下安装我使用 PrependPath 参数,该参数应该将路径添加到 Windows 环境变量中的 Path 中。

但这似乎不起作用。变量不会发生任何变化。

如果我手动开始安装并选择或取消选择添加到路径的复选框,那么一切正常。

在修改当前安装时也适用于清除安装。不幸的是,我没有其他装有 Win 10 Pro 的 PC 来测试它。

我也用 Python 3.6.3 尝试过,结果相同。

编辑:

还尝试使用 PowerShellStart-Process python-3.5.4-amd64.exe -ArgumentList /passive , PretendPath=1获得相同的结果。

还在多台装有 Windows 10 的 PC 上进行了测试,结果相同,因此问题不仅仅在单台 PC 上

编辑: 当然,所有尝试都以管理员身份运行。

4

5 回答 5

1

好的,从我的角度来看,它似乎是 Python 安装程序中的错误,我找不到任何方法让它工作。

我找到了以下解决方法:

使用 py.exe,它是位于 C:\Windows 的本地计算机上所有 Python 版本的包装器,因此您可以在任何地方直接从 CMD 运行它,这要归功于 C:\Windows 是 Path 变量的标准内容。

py -3.5 -c "import sys; print(sys.executable[:-10])"

这给了我 python 3.5 安装的目录。

然后我通过以下方式手动将其设置为路径:

setx Path %UserProfile%";PythonLocFromPreviousCommand
于 2017-11-27T07:50:47.277 回答
0

尝试使用powershell来做到这一点

Start-Process -NoNewWindow .\python.exe /passive
于 2017-11-24T02:05:12.143 回答
0

确保您使用的是提升的命令提示符(即:以管理员身份运行)。

于 2017-11-24T18:26:56.347 回答
0

您是否尝试过使用 InstallAllUsers 参数。默认情况下,它设置为 >to 0,因此请尝试像这样使用它(与 [here][1] 中的示例相同):

python-3.6.0.exe /quiet InstallAllUsers=1 PrependPath=1 Include_test=0 使用/quietover/passive

[1]:https: //docs.python.org /3.6/using/windows.html#installing-without-ui “您提供的链接”

要回答 Erik Šťastný 评论,我认为解决您的问题的一个好方法是将 python 与您的程序打包,以确保预安装所有必需的库。

于 2017-11-27T07:16:49.310 回答
0

我还尝试了 python 安装程序的命令行选项,并注意到与您相同的问题,这是我找到的解决方案:

  1. 从这里下载64位安装程序:https ://www.python.org/downloads/windows/ (链接标题为“ Windows x86-64可执行安装程序”)
  2. 卸载任何当前的 python 安装。
    • 你可以使用这个命令:START python-3.8.3-amd64.exe /uninstall
    • (将 python-3.8.3-amd64.exe 替换为您下载的文件的名称)。
    • (以管理员身份运行 cmd 或批处理文件,右键单击,然后以管理员身份运行)。
  3. 使用 START 命令为所有用户安装(以管理员身份)python 64 位:
    START python-3.8.3-amd64.exe /passive PrependPath=1 Include_pip=1 InstallAllUsers=1
    • (将 python-3.8.3-amd64.exe 替换为您下载的文件的名称)。
    • (以管理员身份运行 cmd 或批处理文件,右键单击,然后以管理员身份运行)。
    • (有关 python 安装程序命令行选项的更多信息:https ://docs.python.org/3/using/windows.html#installing-without-ui )。
  4. (可选)打开一个新的 cmd 窗口以验证 python 是否可以在任何位置工作:
    • 您可以运行以下命令:python --version
    • (如果您没有看到像“Python 3.8.3”这样的输出,那么 Python 尚未添加到您的 PATH 中)。
    • (注意:在我打开一个新的命令提示符窗口之前,该命令不起作用)。

对我来说,所有细节都很重要,所以不要跳过任何细节。

于 2020-06-05T22:22:50.157 回答