Office 64 位中的 32 位 dll

发布于 2024-10-03 05:28:27 字数 87 浏览 2 评论 0原文

我知道我无法在 64 位进程中加载​​ 32 位 dll。我有一个 32 位 dll(VB6 组件),没有源代码,加载在 Excel 自动化宏中。我有什么选择?

I understand that I cannot load a 32 bit dll in a 64 bit process. I have a 32 bit dll (VB6 component), with no source code, that is loaded in an Excel automation macro. What are my options?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

将军与妓 2024-10-10 05:28:28

64 位平台不支持 32 位加载项少量。 Microsoft 建议使用 32 位版本的 Office,除非您运行32 位进程的内存限制只有在您需要处理非常大的电子表格时才可能发生:

安装 Office 2010 版本的建议如下:

  • 如果您组织中的用户依赖于 Office 的现有扩展,例如 ActiveX 控件、第三方加载项、基于早期版本 Office 构建的内部解决方案或与接口相关的程序的 32 位版本如果直接使用 Office,我们建议您在运行 32 位和 64 位支持的 Windows 操作系统的计算机上安装 32 位 Office 2010(默认安装)。

  • 如果您组织中的某些用户是使用大于 2 GB 的 Excel 电子表格的 Excel 专家用户,他们可以安装 64 位版本的 Office 2010。此外,如果您有-内部解决方案开发人员,我们建议这些开发人员能够访问 64 位版本的 Office 2010,以便他们可以在 64 位版本的 Office 2010 上测试和更新您的内部解决方案。

如果您因为以下原因需要使用 64 位版本您有以下选项的内存限制:

  • 如果有源代码,可以自己生成64位版本,

  • 您可以联系供应商获取更新版本,

  • 您可以搜索替代解决方案。

实际上还有 Microsoft 在本文中未提及的第四个选项:您可以创建一个 32 位进程外 COM 服务器,充当 64 位宏和旧版 32 位 COM 组件之间的代理,或者创建 COM+ 应用程序。这里提供了一个示例:

访问 32来自 64 位代码的位 DLL

32-bit add-ins are not supported on 64-bit. Microsoft recommends to use the 32-bit version of Office unless you run into the memory limitations of a 32-bit process which is only likely to happen if you need to deal with extremely large spreadsheets:

The recommendations for which edition of Office 2010 to install are as follows:

  • If users in your organization depend on existing extensions to Office, such as ActiveX controls, third-party add-ins, in-house solutions built on previous versions of Office, or 32-bit versions of programs that interface directly with Office, we recommend that you install 32-bit Office 2010 (the default installation) on computers that are running both 32-bit and 64-bit supported Windows operating systems.

  • If some users in your organization are Excel expert users who work with Excel spreadsheets that are larger than 2 gigabytes (GB), they can install the 64-bit edition of Office 2010. In addition, if you have in-house solution developers, we recommend that those developers have access to the 64-bit edition of Office 2010 so that they can test and update your in-house solutions on the 64-bit edition of Office 2010.

If you need to go with the 64-bit version because of the memory limitations you have the following options:

  • If you have the source code, you can generate a 64-bit version yourself,

  • You can contact the vendor for an updated version,

  • You can search for an alternative solution.

There actually is a fourth option which is not mentioned in this article by Microsoft: You can create a 32-bit out-of-process COM server which serves as a proxy between your 64-bit macros and the legacy 32-bit COM components or create a COM+ application. A sample is provided here:

Accessing 32-bit DLLs from 64-bit code

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文