全部博文(788)
分类:
2009-02-19 17:03:24
totalnum的初始数值是多少
应该不是这个问题,初始值是0 啊
array of 是Delphi特有的开放数组
作为DLL的接口,恐怕有问题的
直接使用fieldbyname().value试试?
totalnum的初始数值?
初始值我说了是0啊,我前面有这样语句的,我的问题还是在于STRING使用上的问题,因为我一旦去掉 setlength(PResult,totalNum);
PResult[totalNum-1].sno:=totalnum;
PResult[totalNum-1].fjcode:=t1;
PResult[totalNum-1].fjname:=t2;这几句,怎么运行都不会出问题的。
1、totalnum的初始值?
2、t1,t2是PChar类型,Pchar是指针,不能用来保存数据,当fjmain.Next后,应该指向了无效地址空间。
3、array of 是Delphi特有的开放数组,作为DLL的接口,肯定有问题的。
4、在循环中反复使用setlength(PResult,totalNum);分配内存空间,可能造成前面已经赋值的记录数据丢失,造成乱码
谢谢以上各位兄弟们的关心和回答,尽管我问题还没有完全处理掉,但给我了很好的思路,先结帖,顺便关于下面的这个问题,问下大哥:
3、array of 是Delphi特有的开放数组,作为DLL的接口,肯定有问题的。
(我ARRAY OF只在函数中单独定义单独使用,不作为DLL程序和外界程序的接口,可以使用么?)
我ARRAY OF只在函数中单独定义单独使用,不作为DLL程序和外界程序的接口,可以使用么?
===================================================================================
那应该没问题的,另外需要指出的是,输出记录地址最好由程序调用Dll函数前分配,不要在Dll中分配