在vc中 如何将CString 组织成 数据集 然后转化成OleVariant类型
时间:2011-12-22
来源:互联网
RisInfo.dll是用delphi写的Com接口 dll
接口方法
1.取数据
RetrieveInfo
2.上传取出后数据处理的结果
PublishResult
开发环境vc6.0
已经将RisInfo.dll注册,RetrieveInfo调用成功
另一个方法如下
inline long IFOO::PublishResult ( long ID, const _variant_t & Info, const _variant_t & Result, long PutID) {
long _result;
HRESULT _hr = raw_PublishResult(ID, Info, Result, PutID, &_result);
if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
return _result;
}
Info的结构 如下:数据类型都为数据集,内部字段数据类型都为字符串
Info[0] = "姓名";
Info[1] = "性别";
...
问题如下
1.如何在VC中,将一个多个处理结果(CString)组织成数据集,转换成OleVariant类型??
,传递到PublishResult ( long ID, const _variant_t & Info, const _variant_t & Result, long PutID)
请给出实例代码
接口方法
1.取数据
RetrieveInfo
2.上传取出后数据处理的结果
PublishResult
开发环境vc6.0
已经将RisInfo.dll注册,RetrieveInfo调用成功
另一个方法如下
inline long IFOO::PublishResult ( long ID, const _variant_t & Info, const _variant_t & Result, long PutID) {
long _result;
HRESULT _hr = raw_PublishResult(ID, Info, Result, PutID, &_result);
if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
return _result;
}
Info的结构 如下:数据类型都为数据集,内部字段数据类型都为字符串
Info[0] = "姓名";
Info[1] = "性别";
...
问题如下
1.如何在VC中,将一个多个处理结果(CString)组织成数据集,转换成OleVariant类型??
,传递到PublishResult ( long ID, const _variant_t & Info, const _variant_t & Result, long PutID)
请给出实例代码
作者: xingqiyi000000 发布时间: 2011-12-22
自己顶下
作者: xingqiyi000000 发布时间: 2011-12-22
怎么没人呀,高手在哪里,快出来,急
作者: xingqiyi000000 发布时间: 2011-12-22
用 SafeArray参考下面的
http://www.cppblog.com/kenlistian/archive/2008/02/13/42695.html
http://www.cppblog.com/kenlistian/archive/2008/02/13/42695.html
作者: fishion 发布时间: 2011-12-22
COleVariant类中就有CString转换成COleVariant的方法,
class COleVariant : public tagVARIANT
{
// Constructors
public:
COleVariant();
COleVariant(const VARIANT& varSrc);
COleVariant(LPCVARIANT pSrc);
COleVariant(const COleVariant& varSrc);
COleVariant(LPCTSTR lpszSrc);
COleVariant(LPCTSTR lpszSrc, VARTYPE vtSrc); // used to set to ANSI string
COleVariant(CString& strSrc);
}
可以这样转
CString strTemp;
strTemp = "abc";
COleVariant cole = COleVariant(strTemp);
即可呀!
看看COleVariant这个类就知道了。
class COleVariant : public tagVARIANT
{
// Constructors
public:
COleVariant();
COleVariant(const VARIANT& varSrc);
COleVariant(LPCVARIANT pSrc);
COleVariant(const COleVariant& varSrc);
COleVariant(LPCTSTR lpszSrc);
COleVariant(LPCTSTR lpszSrc, VARTYPE vtSrc); // used to set to ANSI string
COleVariant(CString& strSrc);
}
可以这样转
CString strTemp;
strTemp = "abc";
COleVariant cole = COleVariant(strTemp);
即可呀!
看看COleVariant这个类就知道了。
作者: pengjiang8508 发布时间: 2011-12-22
引用 4 楼 pengjiang8508 的回复:
COleVariant类中就有CString转换成COleVariant的方法,
class COleVariant : public tagVARIANT
{
// Constructors
public:
COleVariant();
COleVariant(const VARIANT& varSrc);
COleVariant(LPCVARIANT pSrc);
……
COleVariant类中就有CString转换成COleVariant的方法,
class COleVariant : public tagVARIANT
{
// Constructors
public:
COleVariant();
COleVariant(const VARIANT& varSrc);
COleVariant(LPCVARIANT pSrc);
……
谢谢楼上的,我的问题是如何把那些结果组织成数据集再转换成COleVariant,再传递给PublishResult
我取数据时是这么读得
1._variant_t Info;
调用取数据函数
RetrieveInfo(ID,&Info);
CString st1 = ((VARIANT *)(*(Info.parray)).pvData)[0].bstrVal
CString st2 = ((VARIANT *)(*(Info.parray)).pvData)[1].bstrVal
...
我现在想知道如何再把CString类型组织成这样的Info,再传给第二个函数
作者: xingqiyi000000 发布时间: 2011-12-22
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28