• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >vc/mfc > SAFEARRAY问题,为什么读的元素总是最后一个?

SAFEARRAY问题,为什么读的元素总是最后一个?

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-04

佚名通过本文主要向大家介绍了safearray,safearray inp,vlax make safearray,vlax safearray,vlax safearray fill等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: SAFEARRAY问题, 为什么读的元素总是最后一个?
描述:

代码如下:
SAFEARRAY FAR* psa;
SAFEARRAYBOUND rgsabound[1];
rgsabound[0].lLbound = 0;
rgsabound[0].cElements = 8;
psa = SafeArrayCreate(VT_BSTR, 1, rgsabound);
BSTR HUGEP *pbstr;
SafeArrayAccessData(psa, (void HUGEP* FAR*)&pbstr);
pbstr[0] = _bstr_t("U2_DI001203");
pbstr[1] = _bstr_t("U1_PT011204");
pbstr[2] = _bstr_t("U1_DI001201");
pbstr[3] = _bstr_t("U1_DI001202");
pbstr[4] = _bstr_t("U2_PT011203");
pbstr[5] = _bstr_t("U2_PT011204");
pbstr[6] = _bstr_t("U2_DI001201");
pbstr[7] = _bstr_t("U1_PT011205");
SafeArrayUnaccessData(psa);
/*-------------------------------------*/
BSTR HUGEP *pbstrtt;
long lBound ;
// SafeArrayAccessData(*TagNameArray, (void HUGEP* FAR*)&pbstr);
int lb = psa->rgsabound[0].lLbound;
int count = psa->rgsabound[0].cElements;
SafeArrayGetLBound(psa,1, &lBound);
unsigned short type;
SafeArrayGetVartype(psa, &type) ;
SafeArrayGetVartype(psa, &type) ;
for (i=lb; i<count; i++)
{
BSTR HUGEP bstr;
SafeArrayGetElement(psa,&i,&bstr);
_bstr_t _bstr(bstr, false);
// _bstr_t _bstr(*(pbstr++), false);
char *pStr = (char *) _bstr;
printf("\n %s",pStr);
}
SafeArrayUnaccessData(psa);
执行结果:
U1_PT011205
U1_PT011205
U1_PT011205
U1_PT011205
U1_PT011205
U1_PT011205
U1_PT011205
U1_PT011205
问题:
为什么读出的数据总是最后一个?


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 关于SAFEARRAY的释放问题,高手请进
  • VCCOM组件想通过一个事件传递一个Safearray数组如何传递?
  • 请问SAFEARRAY怎么操作?
  • 简单问题一个标准函数SafeArrayGetElement,不知道什么意思
  • [VC->VB@DLL]如何给SAFEARRAY类型的参数传值?
  • 在vc中使用SAFEARRAY的问题??急,大侠们一定要帮帮忙啊!!!!
  • 关于safeArray使用的问题,在线等待,解决给分。
  • 高手帮我看看,关于安全数组(SafeArray)使用问题
  • 关于SAFEARRAY数组的释放问题
  • 自定义类型的SafeArray创建

相关文章

  • 2017-06-04 MScomm的IMScom接口指针为什么取不到?
  • 2017-06-04 请教在文件夹窗口背景单击右键激活的SHELL扩展怎么实现?
  • 2017-06-05 知道进程的ID或句柄该怎么得到进程所对应的主窗口(如果有的话)的句柄呢????
  • 2017-06-05 一个简单的线程例子,为什么编译出错???(初学者)
  • 2017-06-05 给RICHEDIT发什么消息能改变其内容?
  • 2017-06-05 在vc中如何将CString组织成数据集然后转化成OleVariant类型
  • 2017-06-04 求正则表达式;类似分离html地址路径
  • 2017-06-04 为何一个组件编译出来之后一闪就没了呢?
  • 2017-06-05 VS2008写ATLCOM编译自动注册了,我不想自动注册
  • 2017-06-05 以下方法来得知全部线程已退出行不行?

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 谁?----自认是ACTIVEX开发高手,那就回答我的问题吧!
    • com编的对话框调用时刷新的问题
    • 看看这句话是什么意思?
    • 问一个简单的问题(查询语句)?
    • web服务器端采用什么技术与web页面上的ActiveX控件通信?
    • 被强行中止的无界面程序会收到什么消息?
    • DataGrid如何获取当前行列和值
    • 如何在导出类中带有虚函数的类
    • 创建ActiveX控件并拆分???难啊!!!!!
    • 在MFC中使用ChartCtrl控件绘制柱图,如何显示legend?

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有