找回密码
 加入
搜索
查看: 3959|回复: 8

[效率算法] 求助,关于_WinAPI_GUIDFromString 函数的使用[已解决]

  [复制链接]
发表于 2011-4-11 18:52:35 | 显示全部楼层 |阅读模式
本帖最后由 norby 于 2011-4-12 18:59 编辑

哪位大侠帮我解决一下
就是把下面这个字符串转换成八位二进制
618736E0-3C3D-11CF-810C-00AA00389B71

我试了N多方法,包括_WinAPI_GUIDFromString 这个函数
但是没有一种方法能成功的。

那个字符串是计算机的GUID,我想要实现的功能是把字符串转换为八位,然后写入域中计算机的netbootGUID信息里面

初学Au3,还不熟练。
两天没睡觉了,在网上搜索了很久,包括官网上的AD函数,都不行

先谢谢各位了
发表于 2011-4-11 20:46:21 | 显示全部楼层
#Include <WinAPI.au3>

$sGUID="{618736E0-3C3D-11CF-810C-00AA00389B71}"
;~ $pGUID=_WinAPI_GUIDFromString($sGUID)
;~ for $i=1 to 4
;~         msgbox(0,0,DllStructGetData($pGUID,$i))
;~ Next

$pGUID=DllStructCreate($tagGUID)
_WinAPI_GUIDFromStringEx($sGUID, DllStructGetPtr($pGUID))
for $i=1 to 4
        msgbox(0,0,DllStructGetData($pGUID,$i))
Next

评分

参与人数 1金钱 +20 收起 理由
norby + 20

查看全部评分

 楼主| 发表于 2011-4-11 22:05:53 | 显示全部楼层
靠谱!非常接近了!
明天去公司实验一下
谢谢了!!!!!
发表于 2011-4-11 22:19:41 | 显示全部楼层
高手呀,看来我得多学习呀
 楼主| 发表于 2011-4-12 13:20:14 | 显示全部楼层
还是不行,虽然运算结果是是正确的,但是格式不对,还是写不进去

这么说吧
从AD中读取的数据,然后用MsgBox显示出来,格式是下面这样
0xB803A6496CA7DD11BBD88502A4370021
用IsBinary函数验证,为true

然后再写回AD中,就报错。
AD中显示,该字段格式为“OctetString”
只要不是这个格式,别的字段都能写进去。

看来不是运算的问题
有没有哪位大侠知道LDAP这方面的知识?
 楼主| 发表于 2011-4-12 18:59:05 | 显示全部楼层
自己解决了,
测试了不下100次了,今天才发现是权限的问题
真TM想抽自己一巴掌
发表于 2014-12-25 18:27:03 | 显示全部楼层
请问你是怎么从AD中读取0xB803A6496CA7DD11BBD88502A4370021的啊?我现在就需要读取这个,急求
发表于 2014-12-25 18:27:06 | 显示全部楼层
请问你是怎么从AD中读取0xB803A6496CA7DD11BBD88502A4370021的啊?我现在就需要读取这个,急求
发表于 2014-12-25 18:27:07 | 显示全部楼层
请问你是怎么从AD中读取0xB803A6496CA7DD11BBD88502A4370021的啊?我现在就需要读取这个,急求
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-12-28 18:53 , Processed in 0.086264 second(s), 28 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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