你掉的是MtLab生成的DLL,应该是非托管的吧。
.net中调用非托管的DLL,不知道lz调的时候正确,这场情况下该加载的DLL都加载了不应该出现类型初始化的问题。
再就是会不会是编译过程中FrameWork不识别你那种类型
应该是你上面的代码在构造函数里调用了吧,导致对象构造不成功,特别是在静态构造中一定要捕获异常,静态构造是编译器处理的,静态构造中出的异常会被转义为上面的异常。
建议你把这些代码换个位置,不要在构造中处理,你的测试代码没问题,那就不是你的调用非托管的问题了。
你的系统是同类型的吗,都是XP or windows 2003,应该不是变量的问题,一定是机器的环境问题,例如:一个是Fx2.0;一个是FX 3.5
MwChayArray filename=textbox.text???
textbox.text是个string,MwChayArray 也是string吗 ?
是不是应该textbox.text.ToCharArray呢?
MathWorks.MATLAB.NET.Arrays.MWCharArray这个类在初始值设定时有其他静态字段或静态构造函数抛出异常。
因为类型在第一次调用的时候会初始化所有静态字段和静态构造函数,如果其他静态字段或构造函数抛出异常,就会抛出“类型的初始值设定引发的异常”。
详细分析请参考我的随笔:类型初始值设定项引发异常
楼组,你的问题已经解决了么,可以分享一下吗?虽然已经事隔很久了,如果能记起来跟我们分享一下吧。。