1

我正在尝试使用 Visual Studio Express 2012 上的 WPF 应用程序连接到 Quality Center。我的系统配置是 Windows 7 64 位。

我在项目中添加了对 OTAClient.dll 的引用。此 dll 的嵌入式互操作类型属性设置为 true。

搜索类似问题给出了将项目目标平台设置为 x86等解决方案,但该解决方案对我不起作用。

我收到错误

由于以下错误,检索具有 CLSID {C5CBD7B2-490C-45F5-8C40-B8C3D108E6D7} 的组件的 COM 类工厂失败:800703e6 对内存位置的访问无效。(来自 HRESULT 的异常:0x800703E6)。

我还尝试使用regsvr32注册 dll 。

有人可以帮我找出问题所在。

4

1 回答 1

0

我设法解决了这个问题。此错误与 DEP 兼容性有关。该程序正在生成 DEP 异常,要清除它,我们必须清除 IMAGE_DLLCHARACTERISTICS_NX_COMPAT 标志。

这可以通过在 Visual Studio 中添加构建后事件来完成

调用 $(DevEnvDir)..\tools\vsvars32.bat editbin.exe /NXCOMPAT:NO $(TargetPath)

请参阅堆栈溢出问题如何使我的程序与 DEP 兼容?

于 2013-05-09T08:46:10.613 回答