我有一个x64(64位)COM dll。在Windows 7上尝试向Regsvr32注册时-Regsvr32崩溃。

Regsvr32在具有管理权限的cmd下运行(“以管理员身份运行”),我尝试了32位和64位cmd.exe和regsvr.exe,甚至两台不同的PC,它也始终相同。

调试崩溃的Regsvr32报告说发生了缓冲区溢出,这可能是什么问题?

都一样,但是编译为Win32(32位)可以正常工作,并且在注册时没有问题

最佳答案

当编译为64位时,该DLL中DllRegisterServer()的实现很可能会崩溃。

如果您拥有DLL的源代码,则最好的办法是在执行代码执行时对其进行调试,并解决问题的根本原因。当代码不是以位无关(32位/ 64位可移植)方式编写时,通常可能会发生任何错误。

关于c++ - Windows 7上的Regsvr32崩溃,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3665736/

10-11 23:10