本文介绍了在Vista上托管ActiveX的问题(在Visual Studio 6 C ++应用程序中)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我刚刚在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 ++应用程序中)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-31 10:29