2010-10-25 20 views
7

¿Hay alguna otra manera de comparar 2 elementos TGUID, excepto transformarlos en cadenas (la función guidosto) y después evaluar la expresión, en Delphi 7?Delphi 7 tguid compare

Respuesta

4

IsEqualGUID() (o IsEqualIID()), como se sugiere TOndrej. También puedes usar SysUtuils. CompareMem() en su lugar, ya que TGuid es una matriz binaria de bytes.

+0

Como nota al margen: un GUID NO es una matriz de bytes, es una estructura empaquetada con DWORDS, WORDS y BYTES con una longitud total de 16 bytes. Puede buscar la estructura revisando el tipo de TGUID. –

+5

Mi punto es que es un tipo de datos binarios de longitud fija sin relleno, por lo que CompareMem() funcionará como una alternativa a IsEqualGUID(), es decir: 'CompareMem (@ Guid1, @ Guid2, SizeOf (TGuid))'. –

+0

... y 'CompareMem()' parece ser un poco más rápido. – JensG