我尝试从库中调用函数来获取有关机器的一些信息。然而,我得到一个异常SystemLoadException:类型IODBPSD_3从GetAlmMsg,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null无法被读取,有一个对象在第4个位置,这是错误的四舍五入或被一个非对象array.Could覆盖请给我一个建议,该怎么做?不幸的是,我根本不理解IODBPSD_3类的逻辑。非常感谢你的帮助。
Radek
public Focas1.IODBPSD_3 prmData = new Focas1.IODBPSD_3();//my call……
//机器的FOCAS库附件-不是我的代码
public class Focas1
{
...
public const short MAX_AXIS = 8;
[StructLayout(LayoutKind.Explicit)]
public class IODBPSD_3
{
[ FieldOffset( 0 )]
public short datano ; /* data number */
[ FieldOffset( 2 )]
public short type ; /* axis number */
[ FieldOffset( 4 ),
MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
public byte[] cdatas = new byte[MAX_AXIS];
[ FieldOffset( 4 ),
MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
public short[] idatas = new short[MAX_AXIS];
[ FieldOffset( 4 ),
MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
public int[] ldatas = new int[MAX_AXIS];
}
...
}发布于 2013-05-29 14:55:41
问题出在编译方面。我创建了32b处理器,程序现在正在工作。
https://stackoverflow.com/questions/16796285
复制相似问题