我正在尝试注册一个 x64 COM 服务器 dll,以便在 x64 windows 7 上的 x64 office 中使用。我已按照说明进行操作 here但我无法注册 dll。当我尝试时出现以下错误:
我使用的命令是regsvr32 my_x64_com_server.dll
为什么会发生这种情况,是否有解决方法?
提前致谢。
最佳答案
命令是如何运行的?从进程还是从命令行?
确保命令是从 64 位进程(或 64 位 cmd.exe 控制台窗口)运行的。否则,%windir%\System32\regsvr32.exe
命令将被重定向到 %windir%\SysWoW64\regsvr32.exe
并且将运行 32 位 regsrv32 (无法注册 64 位 DLL)。
您也可以尝试使用 %windir%\sysnative\regsvr32.exe
它将重定向到真正的 %windir%\System32\
目录(但只能从 32位进程,因此如果您使用它,请注意确保没有人尝试从 64 位进程运行该命令)。
参见 File System Redirector on MSDN了解详情。
关于visual-c++ - 如何在 64 位 Windows 7 上注册 64 位 COM dll?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15778383/