GUID

出典: フリー百科事典『ウィキペディア(Wikipedia)』

これはこのページの過去の版です。MetaNest (会話 | 投稿記録) による 2015年12月28日 (月) 09:55個人設定で未設定ならUTC)時点の版であり、現在の版とは大きく異なる場合があります。

GUID (Globally Unique Identifier) またはグローバル一意識別子(ぐろーばるいちいしきべつし)は、UUIDの実装のひとつ、あるいは(事実上)UUIDの別名である。

UUIDのマイクロソフトによる実装を指すと解されることもあるが、オラクルのデータベースNetIQeDirectoryディレクトリ・サービス)、GUIDパーティションテーブルなど、ほぼUUIDを指して、GUIDの語が使われることもある。

GUIDを生成するツールとして、Microsoft Windows SDKに付属するGuidGenなどがある。

構造

GUID は16バイト(128ビット)の2進数値で、以下のような構造体で表現される。

GUID STRUCT
 Data1 dd
 Data2 dw
 Data3 dw
 Data4 db 8
GUID ENDS

guiddef.h におけるGUIDの定義は以下のとおり。

typedef struct _GUID {
    unsigned long  Data1;
    unsigned short Data2;
    unsigned short Data3;
    unsigned char  Data4[8];
} GUID;

テキスト表記

GUIDは一般に以下のような16進表記が行われている。

3F2504E0-4F89-11D3-9A0C-0305E82C3301

このテキスト表記は以下のような32桁の構造を持つ。

  1. Data1 (8桁)
  2. ハイフン
  3. Data2 (4桁)
  4. ハイフン
  5. Data3 (4桁)
  6. ハイフン
  7. Data4 の最初の2アイテム(4桁)
  8. ハイフン
  9. Data4 の残りの6アイテム(12桁)

波括弧(ブレース)で囲んで表記することも多い。

{3F2504E0-4F89-11D3-9A0C-0305E82C3301}

使用例

  • COMで用いられているオブジェクト識別のためのクラスID、インターフェイスIDなど。

外部リンク