我有一个库X,它有一个使用组件Y的类C。然而,Y在64位中是不可用的,所以它被组件Z取代了,但是我想在可用时仍然使用Y。所以我想引用Y和Z,然后#If 32bit then// implementation of C using Y#End If#If64bit then// implementation of C</em
这似乎发生在使用x64构建编译我的代码时(针对x64的ATL项目和针对任何CPU的C#测试项目),然后转换回任意CPU构建(针对Win32的ATL项目和针对任何CPU的C#测试项目)。首先,看起来Any C#项目总是使用COM对象的x64版本,因此需要首先编译ATL项目的verion,以便任何代码传播,因为x64系统上的任何CPU实际上都将在x64上下文中运行。它将在COM世界中执行代码,通过行,但返回到C#世界时,它将抛出异常。
编辑:在C++中,printf("%d\n", siz