为什么以及何时使用32位或64位PowerShell或ISE?

时间:2011-08-21 10:34:36

标签: powershell powershell-v2.0 powershell-ise

我刚买了第一台64位Windows笔记本电脑。现在我正在寻找有关何时以及为何使用32位或64位版本的PowerShell或ISE的信息。

我的第一印象是我最好保持32位,直到我理解得更好。

我想念或未找到的是基本教程和实践经验以及这些问题的链接。

5 个答案:

答案 0 :(得分:5)

我正在使用Seven 64Bits和W2K8 R2一年,而且,在命令行,我总是使用64位Powershell而没有任何麻烦。

对我来说问题不是选择32位或64位PowerShell.exe,而是要知道这两种存在,并且32位进程将使用32位PowerShell。例如,如果在Visual Studio 2010中将PowerShell用作后期构建执行脚本,则它将使用32位PoweShell,因为Visual Studio 2010是32位进程。

这两个版本在注册表中看到两个不同的位置,因此您必须为两者设置Set-ExecutionPolicy。

就脚本而言,我不使用ISE,而是使用PowerGUI脚本编辑器。你可以使用

[intPtr]::size

在脚本中知道您运行的是32位还是64位PowerShell.exe。

答案 1 :(得分:3)

您将使用64位版本的PowerShell或PowerShell ISE,您尝试解决的问题是唯一的64位。例如:

  1. 您需要PowerShell脚本才能使用比32位应用程序允许的内存更多的内存

  2. 您正在使用仅64位或需要在64位环境中运行的库。例如,在Windows 2008R2 / IIS7.5上,如果您通过此库使用Microsoft.Web.Management托管包装器if you need to modify administration.config,那么您的应用程序或脚本需要以64位进程运行。

答案 2 :(得分:2)

我通常坚持使用64位PowerShell,除非我有充分的理由不使用它。 32位PowerShell的一个问题是,您可能会意外地发现自己位于HKLM:\ SOFTWARE \ Wow6432Node注册表位置而不是您认为的位置。

我最经常遇到的一个明确需要32位的例子是使用某些COM对象时。例如,如果您有64位操作系统,但是32位Office ...如果要实例化Word,Excel或Access对象,则需要使用32位PowerShell,否则它就是就好像你根本没有安装Office那样。

答案 3 :(得分:0)

运行SharePoint 2013时,尝试使用Windows.SharePoint.PowerShell管理单元时运行64位版本非常重要。我花了太多时间没有意识到我打开了32位ISE无法加载SharePoint命令。

答案 4 :(得分:-1)

我认为你真的不需要关心这一点。至于我的64位系统,预装只有一个32位的PowerShell(在\ system32中),它没有任何问题。所以只需使用它;)除此之外,它很可能与任何其他应用程序的情况相同:如果您依赖于仅在64位下可用的功能/属性,则最好使用该应用程序的64位版本。