インターフェイス UUID の生成
このセクションでは、次のトピックのユニバーサル一意識別子 (UUID) と Uuidgen ユーティリティに関する情報を示します。
UUID とは
クライアントが見つけられるように、すべてのインターフェイスをネットワーク上で一意に識別する必要があります。 小規模なネットワークでは、インターフェイスの名前だけで識別できる場合があります。 ただし、これは通常、大規模なネットワークでは実現できません。 したがって、開発者は通常、ユニバーサル一意識別子 (UUID、GUID という用語と交換可能、またはグローバル一意識別子) を各インターフェイスに割り当てます。 UUID は、16 進数のセットを含む文字列です。 各インターフェイスには異なる UUID があります。 詳細については、「 文字列 UUID」を参照してください。
UUID のテキスト表現は、8 桁の 16 進数とハイフン、4 桁の 16 進数の 3 つのハイフン区切りグループ、ハイフン、12 桁の 16 進数で構成される文字列です。 有効な UUID 文字列の例を次に示します。
ba209999-0c6c-11d2-97cf-00c04f8eea45
空の UUID は、 NULL UUID ではなく nil UUID と呼ばれます。 "nil" という用語は、ゼロ、空白、空、または初期化されていないものを示します。 空の文字列、空のデータベース レコード、または初期化されていない UUID はすべて、nil 値の例です。
Note
値 NULL は、特定の値 0 です。 これは、多くの場合、ポインターと共に C および C++ プログラミングで使用されます。 Nil は NULL よりも一般的な用語 です。 初期化されていないオブジェクト インターフェイス UUID は、 NULL UUID ではなく、常に nil UUID と呼ばれる必要があります。
Uuidgen の使用
Microsoft では、UUID を生成するための Uuidgen というユーティリティ プログラムを提供しています。 Uuidgen ユーティリティは、IDL ファイル形式または C 言語形式で UUID を生成します。
コマンド ラインから Uuidgen ユーティリティを実行すると、次のコマンド スイッチを使用できます。
Uuidgen スイッチ | 説明 |
---|---|
/私 | IDL インターフェイス テンプレートに UUID を出力します。 |
/s | 初期化された C 構造体として UUID を出力します。 |
/O<Filename> | 出力をファイルにリダイレクトします。 /o スイッチの直後に指定されます。 |
/N<数> | 生成する UUID の数を指定します。 |
/v | Uuidgen に関するバージョン情報を表示します。 |
/h または ? | コマンド オプションの概要を表示します。 |
通常は、次の例に示すように Uuidgen ユーティリティを使用します。
uuidgen -i -oMyApp.idl
このコマンドは UUID を生成し、テンプレートとして使用できる MIDL ファイルに格納します。 上記のコマンドを実行すると、MyApp.idl の内容は次のようになります。
[
uuid(ba209999-0c6c-11d2-97cf-00c04f8eea45),
version(1.0)
]
interface INTERFACENAME
{
}
次の手順では、プレースホルダー名 INTERFACENAME をインターフェイスの実際の名前に置き換えます。