Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > .NET > C#.NET > SAFEARRAY使用方法示例
【标  题】:SAFEARRAY使用方法示例
【关键字】:SAFEARRAY
【来  源】:http://blog.csdn.net/absurd/archive/2006/06/10/786822.aspx

SAFEARRAY使用方法示例

Your Ad Here

SAFEARRAY使用方法示例

 

SAFEARRAY不是很好用,一些函数不太直观,一不小心就着了它的道。上次学习编写Google桌面插件时就遇到了麻烦,本来应该是vsa.vt = VT_ARRAY | VT_BSTR,结果写成了vsa.vt = VT_ARRAY,让我查了好久才找到原因。这里整理一下,作为备忘。

 

l         创建

                            long i = 0;

                            VARIANT va = {0};

                            va.vt = VT_BSTR;

                           

                            SAFEARRAYBOUND bounds[1] = {0};

                            bounds[0].cElements = 5;

                            SAFEARRAY* psa = SafeArrayCreate(VT_VARIANT, 1, bounds);

 

l         存入元素

                            for(i = 0; i < 5; i++)

                            {

                                     va.bstrVal = SysAllocString(L"test");

                                     SafeArrayPutElement(psa, &i, &va);

                            }

 

l         获取元素

                            for(i = 0; i < 5; i++)

                            {

                                     va.bstrVal = SysAllocString(L"test");

                                     SafeArrayGetElement(psa, &i, &va);

                                     SysFreeString(va.bstrVal);

                            }

 

l         销毁

                            SafeArrayDestroy(psa);

 

l         生成VARIANT变量

                            VARIANT vsa = {0};

                            vsa.vt = VT_ARRAY | VT_BSTR;

                            vsa.parray = psa;

 

在CPP中调用Jscript中的函数:【上一篇】
override和new使用指南:【下一篇】
【相关文章】
没有相关文章
【随机文章】
  • JBPM中使用Script的例子
  • vim FAQ
  • 命令alias,定制Bash
  • 破解加密光盘五法
  • CAM(计算机辅助制造)
  • 在虚拟机上安装FreeBSD6失败的过程
  • wince中如何獲取pda的id碼
  • FSCommand 用法详解
  • 基于ROSE的Web Service建模
  • 医疗设备50针scsi硬盘
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.