Problem in hosting ActiveX on Vista (in a Visual Studio 6 C++ application)

可紊 提交于 2019-12-10 12:04:33

问题


I just installed Visual Studio 6 (SP5) on a Vista Enterprise machine. Had some problems but I think it’s set up alright.

The problem is my VC++ 6 application fails when trying to host an ActiveX. I was able to compile it ok, though got a warning message from Vista about the rc.exe (“This program has known compatibility issues” ).

When I debugged it I saw that my class that derives from CAxDialogImpl fails on its Create() method. The same application worked just fine on XP!

Is there a known compatibility issue there?

Some tech info: I saw that CAxDialogImpl::Create() (I pass NULL here) calls AtlAxCreateDialogA, which in turn calls CreateDialogIndirectParamA which throws a general exception.

Thanks a lot, Erik

PS - I am Admin on my machine. OS is 32 bit.


回答1:


I wonder if this could be caused by Vista's DEP and the fact that it's hardwired to recognize ATL thunking code, but only of newer versions...?

See http://support.microsoft.com/kb/948468, for example.

Let me know if that works out.



来源:https://stackoverflow.com/questions/1184175/problem-in-hosting-activex-on-vista-in-a-visual-studio-6-c-application

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!