Générez des Identificateurs Uniques Globaux (GUIDs) dans différents formats Microsoft avec notre outil gratuit en ligne. Parfait pour les développeurs .NET, les applications Windows et le développement COM.
Tous les GUIDs suivent la norme RFC 4122 et sont compatibles avec les applications Windows
Les publicités aident à soutenir cet outil gratuit
Combien de GUIDs ? (max 1000)
Un GUID (Identificateur Unique Global) est l'implémentation par Microsoft de la norme UUID (Identificateur Unique Universel). Les GUIDs sont des valeurs de 128 bits garanties uniques à travers tous les ordinateurs du monde et dans le temps. Microsoft a introduit les GUIDs principalement pour une utilisation dans le développement Windows, la programmation COM (Component Object Model) et le Registre Windows. Bien que techniquement équivalents aux UUIDs, les GUIDs sont souvent représentés avec des conventions de formatage spécifiques et utilisés dans des contextes propres à Microsoft.
Bien que les GUIDs et les UUIDs se réfèrent au même concept et suivent la même norme technique (RFC 4122), il existe quelques différences contextuelles dans leur utilisation :
Caractéristique | GUID | UUID |
---|---|---|
Origine | Implémentation Microsoft | Standard ouvert par l'IETF |
Formatage par défaut | Souvent affiché avec accolades : {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} | Typiquement affiché sans accolades : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
Environnements courants | Windows, .NET, COM, Registre | Multi-plateforme, applications web, Unix/Linux |
Convention de casse | Traditionnellement en majuscules dans la documentation Microsoft | Souvent en minuscules dans les spécifications et la documentation |
Ordre des octets | Trois premiers composants stockés en little-endian | Canoniquement stockés en big-endian |
Structure technique | 128 bits suivant la RFC 4122 | 128 bits suivant la RFC 4122 |
Les GUIDs peuvent être représentés dans plusieurs formats selon leur utilisation dans l'écosystème Microsoft :
Format | Exemple | Utilisation courante |
---|---|---|
Standard | XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX | Représentation générique, compatibilité multi-plateforme |
Accolades | {XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX} | Courant dans la documentation Microsoft, VB et certaines APIs Windows |
Parenthèses | (XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX) | Occasionnellement utilisé dans les applications Microsoft héritées |
Registre | HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX} | Chemins du Registre Windows pour les objets COM |
Attribut Guid .NET | [Guid("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX")] | Attribut de classe ou d'interface en C# et .NET |
Déclaration Guid en C# | new Guid("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX") | Code C# lors de la création de nouvelles instances Guid |
Structure C/C++ | DEFINE_GUID(MyGuid, 0xXXXXXXXX, 0xXXXX, 0xXXXX, 0xXX, 0xXX, 0xXX, 0xXX, 0xXX, 0xXX, 0xXX, 0xXX); | Code C/C++ pour le développement COM |
Les GUIDs sont particulièrement précieux dans ces scénarios :
Les GUIDs sont profondément intégrés dans les technologies Microsoft. Voici quelques utilisations spécifiques courantes chez Microsoft :
Techniquement, oui. Les GUIDs et les UUIDs suivent la même norme RFC 4122 et sont structurellement identiques. Les principales différences résident dans la terminologie, les conventions de représentation et les contextes d'utilisation. Microsoft les appelle GUIDs, tandis que la plupart des autres plateformes les appellent UUIDs. Les implémentations Microsoft ont aussi tendance à utiliser des accolades et des lettres majuscules par convention.
Oui, les GUIDs sont couramment utilisés comme clés primaires dans les bases de données, en particulier dans les systèmes distribués ou lorsque les données peuvent être fusionnées à partir de plusieurs sources. Cependant, ils ont des besoins de stockage plus importants (16 octets) par rapport aux identifiants entiers, et peuvent provoquer une fragmentation d'index en raison de leur nature aléatoire. SQL Server propose NEWSEQUENTIALID() pour générer des GUIDs plus adaptés aux index.
Windows utilise les GUIDs de manière extensive. Chaque composant COM possède un CLSID (identificateur de classe) GUID. Les interfaces de périphériques, les pilotes et les composants matériels sont identifiés par des GUIDs. Le Registre Windows stocke les informations de configuration sous des clés nommées par GUID. Les objets Active Directory ont des identificateurs GUID. Même les fonctionnalités et les mises à jour Windows sont suivies à l'aide de GUIDs.
Bien qu'il soit techniquement possible de créer un GUID avec une valeur spécifique, cela va à l'encontre de l'objectif d'utilisation des GUIDs, qui est de garantir l'unicité. En programmation, vous pouvez construire un GUID à partir d'une chaîne spécifique, mais vous ne devriez le faire que pour des cas particuliers comme des GUIDs connus utilisés comme marqueurs ou à des fins de test.
Microsoft implémente principalement la version 4 UUID/GUID (aléatoire) par défaut, qui offre les meilleures garanties d'unicité. Les systèmes Microsoft plus anciens peuvent avoir utilisé la version 1 (basée sur l'horodatage + adresse MAC). La version 4 est préférée pour des raisons de confidentialité et de sécurité, car la version 1 pourrait potentiellement exposer les adresses MAC.