@Ken 我的理解是32位和64位的COM服务器之间没有区别,除了指针宽度不同,但编译器会自动处理。我们刚刚升级了Add-in Express,虽然我还没有在64位的Excel上测试我们的插件,但Add-in Express使用相同的包装器来支持32位和64位。事实上,这对所有组件都适用,不仅仅是COM包装器,因为该IDE仅支持32位。 - David Heffernan
谢谢。我的问题更多是关于使用的GUID。我本以为在.tlb文件中,32位和64位ActiveX组件的GUID会不同。(不太了解在Win64下使用64位ActiveX;正如我所说,我仍然使用32位Office。)当然,如果答案只是安装Office自动化包装器,它不必是Office 2010版本;Delphi XE2仍然附带XP和2K包装器。 - Ken White
1@Ken,这实际上是Johan今天提出的一个不同的问题。如果32位和64位版本的相同服务器具有不同的GUID、ProgID等,那将是一场彻底的噩梦。因此,解决方案是使用不同的注册表视图(32位/64位),并让注册表重定向器来完成这项繁重的工作。 - David Heffernan
2@Ken 这是一个非常出色的解决方案。想象一下,如果你不得不用条件代码自己完成所有工作,那将是多么可怕的噩梦啊。 - David Heffernan
system32
和syswow64
的命名。我可以理解他们的决定,毕竟,除了开发人员之外,没有人真正应该在那里进行调整。但是看看 WOW64 模拟器无缝运行 32 位代码的能力。我对 AMD 和 MS 表示赞扬。我认为所有参与方都做得非常好。作为一个等待了很长时间的 64 位 Delphi 编译器的人,我很高兴 WOW64 运行得如此顺畅。 - David Heffernan