找回密码
 加入
搜索
查看: 5218|回复: 13

[系统综合] [已解决]UDF中API返回值

  [复制链接]
发表于 2014-3-22 19:34:00 | 显示全部楼层 |阅读模式
本帖最后由 haijie1223 于 2014-3-23 19:15 编辑

3.3.9.4中UDF中的这个API写的还真是蛋疼~干嘛不直接返回数组?其他版本也如此吗?
#include <WinAPIEx.au3>
#include <Array.AU3>
Dim $VerInfo = _WinAPI_GetVersionEx()
Dim $INFOEX[11]
For $i = 1 To 10
        $INFOEX[$i] = DllStructGetData($VerInfo, $i)
Next
_ArrayDisplay($INFOEX)
发表于 2014-3-22 20:59:03 | 显示全部楼层
我不解,为什么我这总是报 _ArrayDisplay 未定义。搜索WinAPIEx.au3  这个文件也是有的。所以暂时未能向LZ提供有用的数据
 楼主| 发表于 2014-3-22 21:01:19 | 显示全部楼层
回复 2# 半芯竹


    汗~代码改了~再试试吧
发表于 2014-3-22 21:05:48 | 显示全部楼层
回复 3# haijie1223


我的系统信息就不用说了,您看返回的咱样。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2014-3-22 21:12:35 | 显示全部楼层
回复 3# haijie1223


    您的意思是干嘛不直接返回数组
Dim $VerInfo = _WinAPI_GetVersionEx()
这个是吧? 然后想直接 _ArrayDisplay($VerInfo)  
我这不行。呵呵。
发表于 2014-3-22 21:42:46 | 显示全部楼层
查看 3.3.6.1 ~ 3.3.10.2 是一样的,返回的是结构。可能这是此类API既定的套路吧~~
 楼主| 发表于 2014-3-22 22:07:40 | 显示全部楼层
回复 6# afan


    返回结构还得去查结构中的元素,既然都做成udf了,直接返回数组多好~想不通,回头问问P侠~
发表于 2014-3-22 22:18:24 | 显示全部楼层
结构体 不好吗?
我总在想 为什么有些UDF总是要把结构体转成数组呢 :(
发表于 2014-3-22 22:50:25 | 显示全部楼层
这就是答案了…… 各有需求
发表于 2014-3-22 23:06:06 | 显示全部楼层
本帖最后由 Ycxw2008 于 2014-3-22 23:15 编辑

应该加个选项 囧
不过话说回来了,UDF 自己改下也可以啊.囧
为了看数据 那不如直接_WinAPI_DisplayStruct
 楼主| 发表于 2014-3-22 23:18:51 | 显示全部楼层
回复 10# Ycxw2008


    囧
发表于 2014-3-22 23:21:42 | 显示全部楼层
回复 11# haijie1223


    au3上面结构体    拷贝数据到另一个变量上面不方便
    au3上面数组嘛    取不到地址,感觉很更是不方便

    只是个人意见哈。
 楼主| 发表于 2014-3-22 23:46:43 | 显示全部楼层
回复 9# afan


    问过P侠,他的回复如下:
二次调用api时,可以直接使用此结构的指针。
如果返回数组,那么二次调用时,先得将数组转为结构,然后再获取结构的指针,这样做很麻烦,因为api不认识数组。
果然很有说服力!
发表于 2014-3-23 07:50:18 | 显示全部楼层
回复 13# haijie1223


    还是模糊中....还没用到这些。。。。不理解实际使用情况....
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-31 07:31 , Processed in 0.094390 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表