c++ - CRXIR2 不适用于 Windows 7 和 Vista 上的 VS2010

标签 c++ visual-studio-2010 crystal-reports uac

我们正在从 VS2005 升级到 VS2010。 我们快完成了,但是 Crystal Reports 有问题。 我们在 C++ 应用程序中使用 RDC(基于 COM)组件。

在 Windows 7 或 VISTA 上,我无法让查看器或设计器控件正常工作。 激活控件时出现访问冲突:

// from atlhost.h (line 2208)
hr = m_spOleObject->DoVerb(OLEIVERB_INPLACEACTIVATE, NULL, spClientSite, 0, m_hWnd, &m_rcPos);

奇怪的是,当我在 XP 机器上运行同一个 exe 时,它​​似乎可以工作。

我们基本上使用“AtlAxWin100”窗口类来承载 Crystal 报表控件(“CrystalReports11.ActiveXReportViewer.1”)。 我使用的是 SP6 版本的 Crystal Reports,所以这是最新版本。

此外,当我用 VS2005 编译相同的代码并在 Windows7 或 Vista 上运行它时,一切正常。

是否有人知道可能导致问题的原因或进一步调查的想法?

最佳答案

看来跟DEP有点关系

如果我们完全关闭系统上的 DEP

bcdedit /set Nx AlwaysOff

然后当然是重启, 查看器有效!

不幸的是,这是系统全局关闭。 我们之前尝试单独为我们的 exe 关闭 DEP,但是后来我们从 Windows 收到一条消息,不允许我们为我们的 exe 关闭 DEP...

关于c++ - CRXIR2 不适用于 Windows 7 和 Vista 上的 VS2010,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2911932/

相关文章:

asp.net - 将 Crystal Report 导出为文本文件 - 无 RTF 文件

.net - 针对 .NET 中的大量内存数据生成报告的最有效方法是什么?

c++ - std::setw() 和 ostream::width() 之间的类型不一致

c++ - 菱形继承(钻石问题) - 从抽象类和具体类继承而不是实现基于共享的类

c++ - 如何使用迭代器在 vector 中的不同位置插入多个元素?

visual-studio-2010 - Visual Studio 2010 无法将现有项目添加为链接

visual-studio-2010 - Visual Studio 2010 选择单词/表达式/行/节/方法的快捷方式?

具有纯虚函数的模板类的 C++ 语法?

c# - 尝试从 asp.net 引用 javascript

crystal-reports - 将 Crystal Reports 与 Salesforce 结合使用的好方法?