【问题标题】:Visual Studio VSTO 32-bit and 64-bit buildsVisual Studio VSTO 32 位和 64 位版本
【发布时间】:2020-11-01 06:32:23
【问题描述】:

我正在使用 Visual Studio 编写 Outlook VSTO 插件。该插件使用 SQLite。它需要一个名为 SQLite.interop.dll 的 dll。这有 32 位版本和 64 位版本,Outlook 需要正确的版本。如果最终用户在 64 位 CPU 上运行 32 位版本的 Office,Outlook 需要 32 位版本的 dll,而 64 位版本不起作用。三个问题:

  1. 有没有办法检测用户运行的是 32 位还是 64 位版本的 Office?
  2. 是否可以在 Visual Studio 中对同一个项目进行两个构建,一个包含 32 位 dll,一个包含 64 位 dll,还是我需要两个单独的项目?
  3. 还有其他管理方法吗?

谢谢,

保罗

【问题讨论】:

    标签: visual-studio outlook vsto office-addins


    【解决方案1】:

    您的插件始终以与 Outlook 相同的位数运行,只需将其编译为“任何 CPU”即可。

    保留两个 dll(或将它们作为资源嵌入),并在运行时通过评估 IntPtr 类型的大小来确定位数 - 32 位为 4,64 位为 8。然后提取/加载右侧的 dll位数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-13
      • 2021-07-08
      • 1970-01-01
      • 2011-11-10
      相关资源
      最近更新 更多