Создание идентификаторов UUID интерфейса

В этом разделе представлены сведения о универсальных уникальных идентификаторах (UUID) и служебной программе Uuidgen в следующих разделах:

Что такое UUID?

Все интерфейсы должны быть однозначно определены в сети, чтобы клиенты могли их найти. В небольших сетях только имени интерфейса может быть достаточно для его идентификации. Однако это обычно нецелесообразно в крупных сетях. Поэтому разработчики обычно назначают универсальный уникальный идентификатор (UUID, взаимозаменяемый с термином GUID или глобальный уникальный идентификатор) каждому интерфейсу. UUID — это строка, содержащая набор шестнадцатеричных цифр. Каждый интерфейс имеет свой UUID. Дополнительные сведения см. в разделе String UUID.

Текстовое представление UUID представляет собой строку, состоящую из 8 шестнадцатеричных цифр, за которым следует дефис, за которым следует три группы дефисов из 4 шестнадцатеричных цифр, за которыми следует дефис и 12 шестнадцатеричных цифр. В следующем примере показана допустимая строка UUID:

ba209999-0c6c-11d2-97cf-00c04f8eea45

Пустые идентификаторы UUID называются идентификаторами UUID nil, а не пустыми идентификаторами UUID. Термин nil обозначает все, что равно нулю, пустому, пустому или неинициализированному. Пустая строка, пустая запись базы данных или неинициализированный UUID — все это примеры значений nil.

Примечание

Значение NULL — это конкретное значение ноль. Он часто используется в программировании на C и C++ в сочетании с указателями. Nil — это более общий термин, чем NULL. Неинициализированные идентификаторы UUID интерфейса объекта всегда должны называться идентификаторами UUID nil, а не пустыми идентификаторами UUID.

 

Использование Uuidgen

Корпорация Майкрософт предоставляет служебную программу Uuidgen для создания идентификаторов UUID. Служебная программа Uuidgen создает UUID в формате IDL или языке C.

При запуске служебной программы Uuidgen из командной строки можно использовать следующие параметры.

Коммутатор Uuidgen Описание
Выводит UUID в шаблон интерфейса IDL.
/s Выводит UUID как инициализированную структуру C.
/O<Имени файла> Перенаправляет выходные данные в файл; указывается сразу после параметра /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 фактическим именем интерфейса.