.net 注册旧ActiveX控件时出现奇怪错误

.net 注册旧ActiveX控件时出现奇怪错误,.net,visual-c++,visual-studio-2012,mfc,activex,.net,Visual C++,Visual Studio 2012,Mfc,Activex,我们在一些旧的传统MFC应用程序中使用CGridCtrl(grid32.ocx),最近使用VS2012从.NET 4.0升级到了4.5.1。现在,我们使用这种网格控件的应用程序不再工作。调试时,我从occcont.cpp行925获取断言失败。我找到了一篇Microsoft文章,内容是926()行,我认为这篇文章足够接近,表明它无法注册ActiveX控件。我用regsvr32.exe手动注册了它,获得了成功,但应用程序仍然失败 奇怪的是,它只有在以管理员身份运行时才会失败--在没有管理员权限的情况

我们在一些旧的传统MFC应用程序中使用CGridCtrl(grid32.ocx),最近使用VS2012从.NET 4.0升级到了4.5.1。现在,我们使用这种网格控件的应用程序不再工作。调试时,我从occcont.cpp行925获取断言失败。我找到了一篇Microsoft文章,内容是926()行,我认为这篇文章足够接近,表明它无法注册ActiveX控件。我用regsvr32.exe手动注册了它,获得了成功,但应用程序仍然失败


奇怪的是,它只有在以管理员身份运行时才会失败--在没有管理员权限的情况下正常运行时根本没有问题。我真的不知道接下来该怎么办。有什么想法吗?

这对您有帮助吗?尝试以管理员身份运行regsvr32,看看注册是否仍然失败。请记住注册32/u以删除您现有的注册,该注册可能已注册到香港大学。注册ActiveX应该是安装程序的工作。您是否在Vista下运行?该控件在Vista和Win7下。Jacob-谢谢,但我已经将其作为公寓线程运行。Sheng-是的,你是对的,我忘了先注销它,正如你所猜测的,它在HKCU中。如果你想把它写进一个答案,我会把它标记为完整的。现在我想我需要找出为什么安装程序没有正确注册它。。。