查看: 914|回复: 1

dll不是有效的win32程序

[复制链接]

该用户从未签到

发表于 2013-10-26 11:17:32 | 显示全部楼层 |阅读模式
这个项目是这样的。
1.我们用C++/CLR将osg内核封装了一层。
2.再用C#调用第一步中CLR生成的DLL来实现我们的程序。
之前是在X86机器上编译的整个工程。然后程序在x86和x64(实际上是32位的)上都可以运行。

现在打算把这个项目编译一个x64版本,使在X64电脑上显示的也是64位的。
然后我编译的步骤是  (全部基于x86机器)
1.编译osg(vs工程创建X64平台)
2.编译C++/CLR(vs工程创建X64平台),基于第一步生成的64位的库
3.编译C#、生成我们的程序

以上三个步骤在X86机器编译都可以通过,不能调试和运行(因为是64位的).
可是最后在X64机器上运行最后生成的程序时时候会出错
提示是:无法加载 第二步生成的CLR dll 或它的一个依赖项 ,不是有效的Win32程序。
用depends 查看这个CLR dll。依赖的库也都是64位的(除了一些sysytem32下面的库)

表述得可能不是很清楚,
搞了几天,实在是没辙了。。也不知道是哪步出问题了
大家谁遇到过这样的问题。。求思路。。

该用户从未签到

 楼主| 发表于 2013-10-28 19:24:35 | 显示全部楼层
bug已解决。。用64位的depends查看dll。。之前用的32位的。。o(╯□╰)o
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表