Connaissez-vous ce genre de clé ? GUID UUID [Résolu]

Messages postés
14010
Date d'inscription
samedi 29 décembre 2001
Dernière intervention
28 août 2015
- - Dernière réponse : Renfield
Messages postés
17308
Date d'inscription
mercredi 2 janvier 2002
Dernière intervention
22 août 2018
- 28 sept. 2010 à 14:40
Salut a tou(te)s

Je suis à la recherche d'un renseignement concernant les 'clés' de ce type :
{472C317F-3BBE-4C80-8DF3-D9A4ACC4AB89}
J'ai un logiciel professionnel qui, lors d'un export, qualifie chaque zone de texte avec ce genre de référence.
J'ai fait l'essai de générer deux champs textes à quelques secondes d'intervalle, mais les clés générées ne se ressemblent pas, donc ils ne sont pas basés sur un TimeStamp quelconque :
      TEXT_GRAPHIC
      {
        NAME="{472C317F-3BBE-4C80-8DF3-D9A4ACC4AB89}"
        ORIGIN= { X=582 Y=101 }
        END= { X=612 Y=131 }
        TEXT="Un"
      }
      TEXT_GRAPHIC
      {
        NAME="{98CEC042-B138-4565-B502-6D02F14BC598}"
        ORIGIN= { X=579 Y=143 }
        END= { X=609 Y=173 }
        TEXT="Deux"
      }

Question : Est-ce que ce genre de champ/clé vous dis quelque chose ?
Si oui :
- Est-ce que ça a un nom particulier, afin que je puisse approfondir ma recherche
- Connaissez-vous les règles de génération de ce genre de clés ?

Je dois essayer de les générer de mon côté, en VBA.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
Messages postés
7745
Date d'inscription
mercredi 1 septembre 2004
Dernière intervention
24 septembre 2014
38
3
Merci
Ça ressemble à des clé type GUID (ce que Microsoft appelle aussi CLSID lorsque il s'agit d'identifier des classes ou des activeX), la base de registre en est remplie.

Quant à la façon de la générée, je sais que dotNet comporte des classes pour cela, mais en dehors de dotNet ???

La page wikipédia, si ça peut t'aider --> ici


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 121 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_casy
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Dernière intervention
30 juin 2013
21
3
Merci
Si ça peut t'aider, une pagemontrant comment les générer en VBS et en PHP.

VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 121 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_ghuysmans99
Messages postés
7745
Date d'inscription
mercredi 1 septembre 2004
Dernière intervention
24 septembre 2014
38
3
Merci
qu'un même objet puisse être identifié avec une même clé, d'un système à un autre.


Parce que la clé est générée au moment du développement du projet et non pas à l'installation sur le système cible.

Qui a développer des activeX avec VB6 en sais quelque chose. Quand un projet était refermé, puis réouvert pour modification, la compilation, par défaut, générait une nouvelle clé, au lieu de conserver l'actuelle.
Ce qui fait qu'à chaque fois, on créait en réalité un nouvel objet au lieu d'en faire une mise à jour.
Il fallait penser à aller cocher une option dans le projet pour éviter cela, option qui aurait dû être cochée par défaut selon moi.


Ce système de clé existe aussi dans SQLServer sur les colonnes d'identités que l'on peut choisir sous forme de compteur ou de GUID


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 121 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_casy
Messages postés
14010
Date d'inscription
samedi 29 décembre 2001
Dernière intervention
28 août 2015
73
0
Merci
Vous êtes des anges.
Il me semblait bien avoir vu ça, mais je n'ai jamais compris comment ces clés pouvaient être générées (par quelles lois) et, difficulté suprême, qu'un même objet puisse être identifié avec une même clé, d'un système à un autre.
Bref, je suis surpris de voir qu'elles soient composées de chiffres aléatoires.
Je m'en vais étudier ça de plus prêt.

Merci
Commenter la réponse de cs_Jack
Messages postés
14010
Date d'inscription
samedi 29 décembre 2001
Dernière intervention
28 août 2015
73
0
Merci
Oui, voilà, c'est dans SQL Server.
Je me bagarrais avec Access.
Alzheimer me guette !

En fait, ce n'est pas un GUID dont j'ai besoin, mais d'un UUID qui lui, est basé sur certains éléments comme l'adresse MAC de la (d'une) carte réseau et l'heure.
Et, ô chance, il existe une DLL toute faite, rpcrt4.dll, qui génère ce UUID en quelques lignes (API UuidCreate et UuidToStringA)
Voir API-Guide pour les exemples VB6

Elle est pas belle, la vie ?

Merci encore pour vos lumières
Commenter la réponse de cs_Jack
Messages postés
17308
Date d'inscription
mercredi 2 janvier 2002
Dernière intervention
22 août 2018
60
0
Merci
Codyx, Jack, Codyx :

www.codyx.org/snippet_generer-guid-identifiant-unique_224.aspx

Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp
Commenter la réponse de Renfield

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.