请问数组型转换成olevariant型的函数是什么? 谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 会!服务端过程如下:procedure Tinsertobj.Method1(const vdatas: WideString; Param2: OleVariant);beginend;//param2接受数组客户端发送procedure TForm1.Button1Click(Sender: TObject);var zxs: olevariant; //如果设置array[1..10] of string;会报类型不对的错array与olevariant不同beginzxs[1]:='江苏'; zxs[2]:='浙江'; zxs[3]:='安徽'; zxs[4]:='河北'; zxs[5]:='山西'; zxs[6]:='内蒙'; zxs[7]:='辽林'; zxs[8]:='吉林'; zxs[9]:='黑龙江'; zxs[10]:='福建'; ecook.Method1('dd',zxs);end;报错:invalid argument! 声明一个动态数组就可以了,静态数组不兼容,但动态数组就可以.最后把这个动态数组赋给OleVariant就可以了. sorry,试试这样:)var zxs: array[1..10] of string; //如果设置array[1..10] of string;会报类型不对的错array与olevariant不同 zxsOle:OleVariant; tempPointer:Pointer;begin zxs[1]:='江苏'; zxs[2]:='浙江'; zxs[3]:='安徽'; zxs[4]:='河北'; zxs[5]:='山西'; zxs[6]:='内蒙'; zxs[7]:='辽林'; zxs[8]:='吉林'; zxs[9]:='黑龙江'; zxs[10]:='福建'; zxsOle := VarArrayCreate([0,sizeof(zxs)],varByte); tempPointer := VarArrayLock(zxsOle); Move(zxs,tempPointer^,sizeof(zxs)); VarArrayUnLock(zxsOle); ecook.Method1('dd',zxsOle); 那请问我在服务端的程序里如何接收?比如定义一个数组型变量,如何接收param2里的10个数? 一样的,只不过把Move函数中前两个参数调换位置 请教下编译的错误是指什么错误 操作access数据库时间问题 如何禁止WebBrowser执行脚本? 在别的语言很容易解决的问题,为什么在Delphi找不到解决方法呢?郁闷!!!!! 屏幕保护程序的名字? 一个有关SQL语句执行之后的问题,看一下吧! 请教数据库连接的问题,Database Login?? 图形问题,急 delphi5开发指南问题第28章:TDataSource有什么作用?使用数据感知组件跟表直接连接不行吗? 如何使报表预览显示出来query的动态查询结果? 如何锁定Form的大小? 数据库的树结构--转换树控件的问题
procedure Tinsertobj.Method1(const vdatas: WideString; Param2: OleVariant);
begin
end;
//param2接受数组
客户端发送
procedure TForm1.Button1Click(Sender: TObject);
var
zxs: olevariant; //如果设置array[1..10] of string;会报类型不对的错array与olevariant不同
begin
zxs[1]:='江苏';
zxs[2]:='浙江';
zxs[3]:='安徽';
zxs[4]:='河北';
zxs[5]:='山西';
zxs[6]:='内蒙';
zxs[7]:='辽林';
zxs[8]:='吉林';
zxs[9]:='黑龙江';
zxs[10]:='福建';
ecook.Method1('dd',zxs);
end;报错:invalid argument!
var
zxs: array[1..10] of string; //如果设置array[1..10] of string;会报类型不对的错array与olevariant不同
zxsOle:OleVariant;
tempPointer:Pointer;
begin
zxs[1]:='江苏';
zxs[2]:='浙江';
zxs[3]:='安徽';
zxs[4]:='河北';
zxs[5]:='山西';
zxs[6]:='内蒙';
zxs[7]:='辽林';
zxs[8]:='吉林';
zxs[9]:='黑龙江';
zxs[10]:='福建';
zxsOle := VarArrayCreate([0,sizeof(zxs)],varByte);
tempPointer := VarArrayLock(zxsOle);
Move(zxs,tempPointer^,sizeof(zxs));
VarArrayUnLock(zxsOle);
ecook.Method1('dd',zxsOle);