一杯清酒邀明月
天下本无事,庸人扰之而烦耳。
posts - 3121,comments - 209,views - 578万

    SafeArray是VB中的数组存储方式。通过SafeArray,可以在VC++和VB间相互调用。SafeArray也是Automation中的标准数组存储方式。

1. SafeArrayAccessData

函数原型:

复制代码
1 HRESULT SafeArrayAccessData(
2 
3   SAFEARRAY * psa,
4 
5   void HUGEP **  ppvData
6 
7 );
复制代码

这个函数用于获取SafeArray的数据指针,并锁定SafeArray数组的数据。在取得了数据指针之后,就可以直接访问SafeArray数组中的数据了。

如果数组类型是Type,那么所取得的数据指针实际上就是Type类型的数组的地址。在多维数组的情况下,必须把多个维度的下标转换成一维下标进行访问。

2. SafeArrayUnaccessData
函数原型:

1 HRESULT SafeArrayUnaccessData(
2 
3   SAFEARRAY * psa
4 
5 );

这个函数的作用是对SafeArray数据解锁,解锁后,就不应该继续对数据指针进行读写访问。如果要访问,必须重新获取并锁定数据。

总结:
SafeArrayAccessData函数返回数组的指针。而SafeArrayUnaccessData释放通过SafeArrayAccessData所取得的指针。

3.使用例子:

posted on   一杯清酒邀明月  阅读(492)  评论(0编辑  收藏  举报
编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
· 全程使用 AI 从 0 到 1 写了个小工具
· 从文本到图像:SSE 如何助力 AI 内容实时呈现?(Typescript篇)
历史上的今天:
2020-08-18 Qt mouseMoveEvent无效的问题
2020-08-18 Qt mouseMoveEvent无效
2020-08-18 Qt 使用mouseMoveEvent信号跟踪鼠标移动
2020-08-18 Qt QScriptEngine类不能用解决方法
2020-08-18 Qt 跟踪鼠标事件:setMouseTracking(true)
2020-08-18 Qt setMouseTracking使用
2020-08-18 Qt QGraphicsItem 鼠标点击事件编程方法
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示