为什么我的 Run64BitRuntime 标志被忽略

Why is my Run64BitRuntime flag ignored

我正在使用 Visual Studio 2012,安装了 SQL Server 2012 Data Tools。由于某些无法解释的原因,我的工作站将仅 运行 我的 SSIS 代码处于 32 位模式。这是我为测试目的而构建的虚拟数据流:

这是我的设置:

它只有 运行s DTSDebugHost.exe *32.

我已经无计可施了。我该怎么做才能弄清楚为什么 运行ning 只是 DTSDebugHost.exe(64 位版本)?

发生这种情况是因为 VS 2012 正在检查是否安装了 VS 2010 ULTIMATE。它只是查找注册表项。

解决方案:

  1. 打开注册表编辑器
  2. 浏览到 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DevDiv\vs\Servicing.0\
  3. 创建一个名为 premium
  4. 的密钥
  5. 创建一个名为 ultimate
  6. 的密钥
  7. 浏览到 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DevDiv\vs\Servicing.0\
  8. 创建一个名为 premium
  9. 的密钥
  10. 创建一个名为 ultimate
  11. 的密钥

重启 VS 2012。

现在调试时应该可以在 64 位模式下工作。

在为 VS 2013 安装 SSDT-BI 后,

运行 遇到与 SQL Server 2014 Enterprise 几乎相同的问题和解决方案。

On a side note, I tried using the 64-bit debug host in SSDT-BI VS 2013 on two separate installs. One where a full instance of SQL Server 2014 Enterprise was already installed (with 64-bit debug host installed and verified) and another where no previous SQL Server components had been installed at all. I wanted to ensure that the "no debug with 64-bit runtime" issue was not simply due to a missing 64-bit debug host or that the 64-bit host was not installed as part of SSDT-BI for VS 2013 (It is not. It's part of the full SQL Server itself, Integration Services (Shared Feature).

根据 this thread on Social MSDN,添加以下注册表项是让 64 位调试主机为我工作的原因:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DevDiv\vs\Servicing.0\professional