我正在尝试注册一个x64 COM服务器DLL用于x64 windows 7上的x64办公室 . 我已按照说明here但我无法注册dll . 当我尝试收到以下错误时:
我使用的命令是 regsvr32 my_x64_com_server.dll
regsvr32 my_x64_com_server.dll
为什么会发生这种情况并且有解决方法吗?
提前致谢 .
命令是如何运行的?从进程或命令行?
确保从64位进程(或64位cmd.exe控制台窗口)运行该命令 . 否则, %windir%\System32\regsvr32.exe 命令将被重定向到 %windir%\SysWoW64\regsvr32.exe ,并且将运行32位regsrv32(无法注册64位DLL) .
%windir%\System32\regsvr32.exe
%windir%\SysWoW64\regsvr32.exe
您也可以尝试使用 %windir%\sysnative\regsvr32.exe ,它将重定向到真正的 %windir%\System32\ 目录(但仅限于32位进程,因此如果您使用它,请注意确保没有人尝试从64位进程运行该命令) .
%windir%\sysnative\regsvr32.exe
%windir%\System32\
有关详细信息,请参阅File System Redirector on MSDN .
1 回答
命令是如何运行的?从进程或命令行?
确保从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 .