我的控件借口函数定义如下
long AcquireBulkDataToMemory(
long dataCount,
VARIANT* dataBuffer,
long timeOut = 0,
boolean cyclic = false,
boolean synchronous = true
);
其中VARIANT* dataBuffer,
参数要如何传参,定义一个VARIANT*类型指针是不是还要初始化.
long AcquireBulkDataToMemory(
long dataCount,
VARIANT* dataBuffer,
long timeOut = 0,
boolean cyclic = false,
boolean synchronous = true
);
其中VARIANT* dataBuffer,
参数要如何传参,定义一个VARIANT*类型指针是不是还要初始化.
解决方案 »
- 在菜单上的鼠标操作所产生的消息
- 在对话框的BOOL CBGMusicDlg::OnInitDialog()中添加
- 请问如何改变ClistCtrl ICON样式,被选中以后字体的颜色,并且去掉字体周围的虚线?
- 如何得到OutLook的版本号?不是Outlook express
- 寻找炮炮兄。
- 在用vc编辑源程序时,如果以行程序太长如何换到下一行(回车键不行-----编译出错)而不是编译时出错?(保送分)
- 视图中显示的问题??在线等待,晚上11:30前准时结帐
- 关于VC对话框,请各位大侠再拨刀相助?
- 对于多CPU系统(MPS),后端服务器程序怎样优化?欢迎讨论。
- 请教,不是太难!!!
- 输入选择提示窗口,就像VC编程时候输入OBJECT->,然后在->地方弹出的哪个选择窗口
- 请教:WinSNMP开发扩展代理,如何配置?
dataBuffer = &(VARIANT(i));
初始化不需要
如dataCount、dataBuffer是[in]还是[out]属性,看你这个函数的名称,我怎么感觉dataBuffer像被测试对象,而
dataCount像返回值。
调用者应该这样:
......
VARIANT vtBuffer;
VariantInit(&vtBuffer);
AcquireBulkDataToMemory(32, &vtBuffer, ...);在你的函数体类应该这样:
long AcquireBulkDataToMemory(
long dataCount,
VARIANT* dataBuffer,
long timeOut = 0,
boolean cyclic = false,
boolean synchronous = true
)
{
......
V_VT(dataBuffer) = VT_BSTR;
V_BSTR(dataBuffer) = ::SysAlloceString(...);
......
}
sa.Add(...);
V_VT(dataBuffer) = VT_ARRAY | VT_BYREF;
V_ARRAY(dataBuffer) = sa.Detach();
long dataCount=10;
SAFEARRAY saVector;
SAFEARRAYBOUND rgsabounds[] = { {dataCount, 0} };
SafeArrayCreate(VT_I1,1,rgsabounds); VARIANT var;
VariantInit(var);
V_VT(var)=VT_ARRAY;
var.parray=&saVector;
AcquireBulkDataToMemory(dataCount,&var);
SAFEARRAY* saVector;
SAFEARRAYBOUND rgsabounds[] = { {dataCount, 0} };
saVector=SafeArrayCreate(VT_I2,1,rgsabounds); VARIANT var;
VariantInit(var);
V_VT(var)=VT_ARRAY;
var.parray=saVector;
AcquireBulkDataToMemory(dataCount,&var);
SAFEARRAY* saVector;
SAFEARRAYBOUND rgsabounds[] = { {dataCount, 0} };
saVector=SafeArrayCreate(VT_I1,1,rgsabounds); VARIANT var;
VariantInit(&var);
V_VT(&var)=VT_ARRAY;
var.parray=saVector;
AcquireBulkDataToMemory(dataCount,&var);
多谢大家了:)