OCX结构体值的有关问题,麻烦帮忙看下能否可以

OCX结构体值的问题,麻烦帮忙看下能否可以?
由于需要连接后台进行测试,所以自己目前现在没法测试。结构体
umsstr_out 定义:
{
char rescode[2]; /*1~2位 返回码 ( 2字节, "00"成功)*/
char bank_code[4]; /*3~6位 银行行号(4字节)*/
char card_no[20]; /*7~26位 卡号 (20字节,左对齐,不足部分补空格)*/
char expr[4];     /*27~30位 有效期 (4字节) */
char batch[6];     /*31~36位 批次号(6字节)*/
char trace[6];     /*37~42位  流水号  (6字节,左对齐)*/
char amount[12]; /*43~54位 金额(12字节,无小数点,左补0,单位:分)*/
char resp_chin[40]; /*55~94位  错误说明(40字节,左对齐,不足部分补空格)*/
char smchtid[15]; /*95~109位 商户号*/
char stermid[8]; /*110~117位 终端号*/
char reference[12]; /*118~129位 系统参考号*/
char sdate[4]; /*130~133位 交易日期,月日*/
char stime[6]; /*134~139位 交易时间,时分秒*/
char info[90];        /*140~229位 备注*/
}

OCX的接口代码
short CTisSelfServiceCtrl::Query(const VARIANT FAR& BankOut) 
{
int iRet;
umsstr_out bank_out;
HRESULT hr;
iRet=UMS_Query_Dll(&bank_out);
if(iRet==0)
{
hr = SafeArrayAccessData(BankOut.parray, (void**)bank_out.amount);
hr =SafeArrayAccessData(BankOut.parray,(void**)bank_out.bank_code);
hr =SafeArrayAccessData(BankOut.parray,(void**)bank_out.batch);
hr =SafeArrayAccessData(BankOut.parray,(void**)bank_out.card_no);
}
return iRet;
}


大致流程是 页面VBSCRIPT或者JS调用OCX 然后OCX调用对方的动态库,动态库中的参数是结构体,我这么操作能否把数据全部取出来。万分感谢!!!!

------解决方案--------------------
umsstr_out 也封装成对象