问题描述
我刚刚在Vista Enterprise计算机上安装了Visual Studio 6(SP5)。有一些问题,但我认为它设置好了。
I just installed Visual Studio 6 (SP5) on a Vista Enterprise machine. Had some problems but I think it’s set up alright.
问题是我的VC ++ 6应用程序失败,当尝试主机一个ActiveX。
我能够编译它确定,虽然从Vista有关于rc.exe的警告消息(此程序已知兼容性问题)。
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" ).
当我调试它,我看到我的类派生自CAxDialogImpl失败其Create()方法。
同样的应用程序在XP上工作得很好!
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?
一些技术信息:
我看到CAxDialogImpl :: Create()(我在这里传递NULL)调用AtlAxCreateDialogA,它反过来调用CreateDialogIndirectParamA引发一个一般的异常。
Some tech info:I saw that CAxDialogImpl::Create() (I pass NULL here) calls AtlAxCreateDialogA, which in turn calls CreateDialogIndirectParamA which throws a general exception.
非常感谢
Erik
Thanks a lot,Erik
PS - 我是我的机器上的管理员。 OS是32位。
PS - I am Admin on my machine. OS is 32 bit.
推荐答案
我不知道这是否可能是由Vista的DEP和它的硬连线识别ATL thunking
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...?
请参阅。
让我知道是否可行。
这篇关于在Vista上托管ActiveX的问题(在Visual Studio 6 C ++应用程序中)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!