0

我正在 VS 2012 中构建 PowerShell 主机,目前在 C# (.NET 4.5) 控制台项目中。该项目配置为任何 CPU,并且未选中“首选 32 位”。我通过添加手动添加了对 System.Management.Automation 的引用

    <Reference Include="System.Management.Automation" />

到 ItemGroup 与 .csproj 文件中的其他引用。我从注册表中读取到奇怪的行为(缺少键等),我意识到它正在查看 x86 部分。所以我在主机中运行了这个脚本:

if ([System.IntPtr]::Size -eq 4) 
{ 
    "32-bit"
}
else
{
    "64-bit"
}

然后回来了

"32-bit"

考虑到这种行为,这并不令人惊讶,但考虑到配置,这并不令人惊讶。有人有什么想法吗?托管的 PowerShell 有什么必须是 x86 的吗?

4

1 回答 1

0

在偶然的情况下,我尝试选中“首选 32 位”框,保存项目,然后取消选中它并再次保存项目。在此之后,它构建为 64 位。有关信息,这是 Visual Studio 2012 Update 2 (11.0.60315.01)。

于 2013-05-04T17:10:41.140 回答