我想知道是否有办法使用c#和system.automation命名空间规定在64位Windows 2008服务器上初始化哪个版本的Powershell(32位\ 64位)?
原因是我创建了一个使用com对象的ps1脚本,该脚本只能在32位Powershell环境中运行。
我不知道在运行空间创建期间指定32位\ 64位的方法,但可能是错误的。有什么想法或建议吗?
由于
答案 0 :(得分:1)
将应用程序的配置从“任何CPU”/“x64”更改为“x86”绝对是确保Powershell脚本以32位运行的最简单方法。您可以使用包含以下内容的脚本进行检查:
if ([System.IntPtr]::Size -eq 8) {'64-bit'} else {'32-bit'}
将Runspace
配置为在64位应用程序中运行32位可能是可能的,但它也可能比它的价值更麻烦。