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