知识库(3)-从Active Directory获取对象的GUID

发表于:2007-07-01来源:作者:点击数: 标签:
下面讲述如何转换一个十六进制字符形式的对象的GUID到它的字符串形式: 1. 将下列代码粘贴到. VB S文件 ================================================================ Set the next line to reflect a DN for an object in the directory ===========

下面讲述如何转换一个十六进制字符形式的对象的GUID到它的字符串形式:

1.   将下列代码粘贴到.VBS文件

´================================================================
´Set the next line to reflect a DN for an object in the directory
´================================================================
Set obj = GetObject("LDAP://CN=Username,CN=Users,DC=DOMAIN,DC=COM")
MsgBox "The GUID string Value for user " & obj.Get("DisplayName") & _
       " is " &  ConvertHexStringGUIDToStringGUID(obj.GUID)

´================================================================
´ ConvertHexStringGUIDToStringGUID function
´================================================================
Function ConvertHexStringGUIDToStringGUID(strOctet)
    Dim tmpGUID, GUIDStr
    ´Convert the string by flipping the bits around.
    GUIDStr = Mid(strOctet, 7, 2)
    GUIDStr = GUIDStr + Mid(strOctet,  5, 2)
    GUIDStr = GUIDStr + Mid(strOctet,  3, 2)
    GUIDStr = GUIDStr + Mid(strOctet,  1, 2)
    GUIDStr = GUIDStr + Mid(strOctet, 11, 2)
    GUIDStr = GUIDStr + Mid(strOctet,  9, 2)
    GUIDStr = GUIDStr + Mid(strOctet, 15, 2)
    GUIDStr = GUIDStr + Mid(strOctet, 13, 2)
    GUIDStr = GUIDStr + Mid(strOctet, 17, Len(strOctet))

    tmpGUID = "{" & Mid(GUIDStr,  1,  8) & "-" & Mid(GUIDStr,  9, 4) & _
              "-" & Mid(GUIDStr, 13,  4) & "-" & Mid(GUIDStr, 17, 4) & _
              "-" & Mid(GUIDStr, 21, 15) & "}"

    ConvertOctettoGUID = tmpGUID
End Function


2.运行脚本


原文转自:http://www.ltesting.net