2017-05-09 148 views
0

通过Powershell安装Chocolatey的步骤并不适用于我的Windows 7 64位个人电脑。我下面https://chocolatey.org/install#install-from-powershell-v3巧克力不会安装

  • 我已经证实了ExecutionPolicy和系统路径具有 PowerShell的;

    PS C:\Users\a> Get-ExecutionPolicy 
    AllSigned 
    
    PS C:\Users\a> ($env:Path).split(';') 
    %SystemRoot%\system32\WindowsPowerShell\v1.0\ 
    C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common 
    C:\Program Files (x86)\Intel\iCLS Client\ 
    C:\Program Files\Intel\iCLS Client\ 
    C:\ProgramData\Oracle\Java\javapath 
    C:\Windows\system32 
    C:\Windows 
    C:\Windows\System32\Wbem 
    C:\Windows\System32\WindowsPowerShell\v1.0\ 
    C:\Program Files\Java\jre1.8.0_40\bin 
    C:\Program Files\Java\jdk1.8.0_40\bin 
    C:\Program Files (x86)\AMD\ATI.ACE\Core-Static 
    C:\Windows\System32\WindowsPowerShell\v1.0\ 
    C:\Program Files\Intel\Intel(R) Management Engine Components\DAL 
    C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL 
    C:\Program Files\Intel\Intel(R) Management Engine Components\IPT 
    C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT 
    C:\HashiCorp\Vagrant\bin 
    C:\Program Files (x86)\Git\bin 
    C:\Program Files (x86)\Skype\Phone\ 
    C:\Program Files (x86)\Git\bin 
    C:\Program Files (x86)\Git\libexec\git-core 
    
    C:\Program Files (x86)\Nmap 
    C:\Program Files\smartmontools\bin 
    
  • 这是我的错误消息;

    PS C:\Users\a> iwr https://chocolatey.org/install.ps1 -UseBasicParsing | iex 
    ???# : The term '???#' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again. 
    At line:1 char:1 
    + ???# ===================================================================== 
    + ~~~~ 
        + CategoryInfo   : ObjectNotFound: (???#:String) [], CommandNotFoundException 
        + FullyQualifiedErrorId : CommandNotFoundException 
    
    Getting latest version of the Chocolatey package for download. 
    Getting Chocolatey from https://chocolatey.org/api/v2/package/chocolatey/0.10.5. 
    !Test-Path : The term '!Test-Path' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again. 
    At line:188 char:11 
    + } elseif (!Test-Path $7zaExe) { 
    +   ~~~~~~~~~~ 
        + CategoryInfo   : ObjectNotFound: (!Test-Path:String) [], CommandNotFoundException 
        + FullyQualifiedErrorId : CommandNotFoundException 
    
    Extracting C:\Users\a\AppData\Local\Temp\chocolatey\chocInstall\chocolatey.zip to C:\Users\a\AppData\Local\Temp\chocolatey\chocInstall... 
    Exception calling "Start" with "0" argument(s): "The system cannot find the file specified" 
    At line:211 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 line:212 char:3 
    + $process.BeginOutputReadLine() 
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
        + CategoryInfo   : NotSpecified: (:) [], MethodInvocationException 
        + FullyQualifiedErrorId : InvalidOperationException 
    
    Exception calling "WaitForExit" with "0" argument(s): "No process is associated with this object." 
    At line:213 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 line:225 char:15 
    +  default { throw "$errorMessage 7-Zip signalled an unknown error (code $exitC ... 
    +    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
        + CategoryInfo   : OperationStopped: (Unable to unzip...n error (code):String) [], RuntimeException 
        + FullyQualifiedErrorId : Unable to unzip package using 7zip. Perhaps try setting $env:chocolateyUseWindowsCompression = 'true' and call install again. Error: 7-Zip signalled an unknown error (code) 
    
  • 我试图在最后一行

    Perhaps try setting $env:chocolateyUseWindowsCompression = 'true' 
    

    但是,这不仅导致了一系列其他错误

+0

的AllSigned目前不会因工作在PowerShell中的一些发现的问题,我们一起到PowerShell团队通过。当0.10.6出来时它会再次工作。至于另一个问题,今天介绍了BOM,以确保authenticode在非BOM文件中的unicode字符(我们最近发现的第二个问题)上不会失败 - 请提出一个适当的问题,以便我们能够修复它。 – ferventcoder

+0

https://github.com/chocolatey/choco(尽管我们已经对allsigned有问题并已修复此问题)和https://github.com/chocolatey/chocolatey.org以获取BOM install.ps1脚本。谢谢! – ferventcoder

+0

我在https://github.com/chocolatey/chocolatey.org/issues/512提交了此问题 – ferventcoder

回答

1
 
PS C:\admin\scripts>iwr https://chocolatey.org/install.ps1 -UseBasicParsing 


StatusCode  : 200 
StatusDescription : OK 
Content   : # ===================================================================== 
... 

你的错误消息的建议下载一个UTF-8编码的文件(内容以UTF-8的特征开始byte order mark ),但它被视为ASCII文本。

除了:

我下面https://chocolatey.org/install#install-from-powershell-v3

不,你不是。你引用的网站告诉你使用

iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1')) 

,而你正在尝试使用

iwr https://chocolatey.org/install.ps1 -UseBasicParsing | iex 

如果你想用这种方法,你需要从内容中删除BOM这像宣传的那样,管道入Invoke-Expression前:

(iwr https://chocolatey.org/install.ps1 -UseBasicParsing).Content -replace '^' | iex 
+0

如果你点击更多的选项,你会看到他链接的东西 - 你会希望PowerShell能够正确处理文件,看看它是UTF8 b/c BOM(但很明显,情况并非如此)。 – ferventcoder

+0

当头版上有一个正常工作时,我倾向于不通过“更多选项”。 –

相关问题