Condividi tramite


Convertire un GUID formattato in stringa in formato stringa esadecimale da utilizzare durante l'esecuzione di query in Active Directory

Questo articolo descrive come convertire un GUID formattato in stringa (ad esempio, {XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXXXXX}) nel formato stringa esadecimale da usare in una stringa di associazione GUID in Active Directory.

Numero KB originale: 325648

Per convertire un GUID formattato in stringa nel formato stringa esadecimale, seguire questa procedura:

  1. Incollare il codice seguente in un file vbs.

    '================================================================
    ' Replace the value of strGUID with an actual GUID
    '================================================================
    strGUID = "{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}"  
    Set obj = GetObject("LDAP://<GUID=" & ConvertStringGUIDToHexStringGUID(strGUID) & ">")
    MsgBox "The octet guid for " & obj.Get("displayname") & " is " & obj.GUID
    
    '================================================================
    ' ConvertGUIDtoOCTET function
    '================================================================
    Function ConvertStringGUIDToHexStringGUID(strGUID)
     Dim octetStr, tmpGUID
    
    For i = 0 To Len(strGUID)
     t = Mid(strGUID, i + 1, 1)
     Select Case t
     Case "{"
     Case "}"
     Case "-"
     Case Else
     tmpGUID = tmpGUID + t
     End Select
     Next
    
    octetStr = Mid(tmpGUID, 7, 2)' 0
     octetStr = octetStr + Mid(tmpGUID, 5, 2)' 1
     octetStr = octetStr + Mid(tmpGUID, 3, 2)' 2
     octetStr = octetStr + Mid(tmpGUID, 1, 2)' 3
     octetStr = octetStr + Mid(tmpGUID, 11, 2)' 4
     octetStr = octetStr + Mid(tmpGUID, 9, 2)' 5
     octetStr = octetStr + Mid(tmpGUID, 15, 2)' 6
     octetStr = octetStr + Mid(tmpGUID, 13, 2)' 7
     octetStr = octetStr + Mid(tmpGUID, 17, Len(tmpGUID))
    
    ConvertGUIDtoOCTET = octetStr
    End Function
    
  2. Eseguire lo script.