2013-03-07 176 views
0

我創建的腳本使用的組件僅適用於32位版本的PowerShell。Powershell:使用x86 powershell運行的腳本/ ise

默認情況下,Windows使用powershell x64執行腳本,並導致多個錯誤。

是在腳本開始處設置值以強制Windows使用powershellx86而不是x64的方法嗎?

例子:

using powershell(x86).exe 

scriptblock 

謝謝

+0

閱讀此處:http://www.ehow.com/how_12171385_run-only-x86-powershell.html – 2013-03-07 10:59:43

回答

2

你不能只是開始 「的PowerShell(86).exe」 的文件嗎?

的%SystemRoot%\ SysWow64資料\ WindowsPowerShell \ V1.0 \ powershell.exe

/弗雷德裏克

1

有沒有簡單的方法來做到這一點,但有一種方式來調用PowerShell主機的另一個實例在x64主機中,該實例可能也是x86。 $ env:PROCESSOR_ARCHITECTURE會告訴你正在運行的Powershell主機的版本。

只是一個素描,使用鑿子和沙紙完成。

function Execute-Scriptx86 
{ 
    param(
    [Parameter(Mandatory=$True,Position=1)] 
    [string]$ScriptFile 
    ) 

    if($env:PROCESSOR_ARCHITECTURE -eq "AMD64") 
    { 
     $powershellx86 = $env:SystemRoot + "\syswow64\WindowsPowerShell\v1.0\powershell.exe" 
     & $powershellx86 -File $ScriptFile 
    } 
    else 
    { 
     & $ScriptFile 
    } 
} 
相關問題