无法在 Windows 10 版本 1903 上安装 Chocolatey

Posted

技术标签:

【中文标题】无法在 Windows 10 版本 1903 上安装 Chocolatey【英文标题】:Cannot install Chocolatey on Windows 10 version 1903 【发布时间】:2019-08-16 11:15:07 【问题描述】:

我最近将我的 Windows 10 升级到了 1903 版,但在遇到一些问题并联系了 Microsoft 技术支持之后,我已经重置了我的 Windows。现在我正在尝试重新安装重置之前安装的所有内容,其中之一是Chocolatey (The package manager for Windows)。

我尝试同时运行installation command:

(用于 cmd)

@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"

(用于 PowerShell)

Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

但是每次我得到这个错误:

Exception calling "Start" with "0" argument(s): "The specified executable is not a valid application for this OS
platform."
At C:\Users\ehsan\Downloads\install.ps1:206 char:3
+   $process.Start() | Out-Null
+   ~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : Win32Exception

Exception calling "BeginOutputReadLine" with "0" argument(s): "StandardOut has not been redirected or the process
hasn't started yet."
At C:\Users\ehsan\Downloads\install.ps1:207 char:3
+   $process.BeginOutputReadLine()
+   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : InvalidOperationException

Exception calling "WaitForExit" with "0" argument(s): "No process is associated with this object."
At C:\Users\ehsan\Downloads\install.ps1:208 char:3
+   $process.WaitForExit()
+   ~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : InvalidOperationException

Unable to unzip package using 7zip. Perhaps try setting $env:chocolateyUseWindowsCompression = 'true' and call install
again. Error: 7-Zip signalled an unknown error (code )
At C:\Users\ehsan\Downloads\install.ps1:220 char:15
+ ...   default  throw "$errorMessage 7-Zip signalled an unknown error (co ...
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OperationStopped: (Unable to unzip...n error (code ):String) [], RuntimeException
    + FullyQualifiedErrorId : Unable to unzip package using 7zip. Perhaps try setting $env:chocolateyUseWindowsCompres
   sion = 'true' and call install again. Error: 7-Zip signalled an unknown error (code )

我也尝试下载install.ps1 脚本并手动运行它(在将执行策略设置为绕过之后,当然),但结果与上面相同。值得一提的是,我以管理员身份运行 cmd 和 PowerShell 进行安装。顺便说一句,我还没有尝试离线安装,因为我无法弄清楚说明是什么。

谷歌搜索错误并没有帮助我找到解决方案。

【问题讨论】:

【参考方案1】:

我遇到了同样的问题(至少消息是完全相同的)。我在一个更受控制的环境中安装巧克力,也就是说,由于某些安全策略原因,某些部分的脚本不允许执行。

错误是在 PowerShell 的第 192 行,它试图下载一个 EXE 文件:

Download-File 'https://chocolatey.org/7za.exe' "$7zaExe"

这在我的环境中是不允许的,因为我的 Windows 上已经安装了 Zip,所以我只需将所需文件 (7az.exe) 复制并重命名到 install.ps1(Powershell 脚本)所在的文件夹中寻找。

就我而言:

C:\Users\%USER%\AppData\Local\Temp\chocolatey\chocInstall\7za.exe

因此,将 ZIP exe 文件放在此路径,使用此名称,一切正常。

干杯

【讨论】:

以上是关于无法在 Windows 10 版本 1903 上安装 Chocolatey的主要内容,如果未能解决你的问题,请参考以下文章

Windows 更新 1903 后 Composer 无法使用 laravel

如何在 UWP 应用(C# 或 WinJS)中获取 Windows 10 版本(例如 1809、1903、1909、...)?

如何在单一语言版本上更改 Windows 10 界面语言 [关闭]

Windows 10 更新后VMware Workstation pro无法运行 (无需卸载原版本VM)

英特尔的驱动程序与Windows 10 V1903出现兼容问题

技巧解决win10的1803版本下,无法收到1809推送从而无法更新到1903版本的问题。