Анализ кода ATL COM-компонента. Сценарий реестра

   
На этом шаге мы рассмотрим назначение и содержимое сценария реестра.

   
При загрузке клиентом СОМ-объекта библиотека СОМ обращается к реестру за сведениями, находящимися в разделе
HKEY_CLASSES_ ROOT (HKCR). Мастера ATL создают для СОМ-компонента сценарий
реестра, в котором и содержится эта информация.

   
Сценарий реестра включается в проект в качестве ресурса. Файл сценария имеет расширение .rgs и хранится в
папке проекта. Вот как он выглядит:

HKCR
{
	EncodeServer.Encoder.1 = s 'Encoder Class'
	{
		CLSID = s '{9DBB482D-4600-43F4-A96E-AEF8F600574E}'
	}
	EncodeServer.Encoder = s 'Encoder Class'
	{
		CLSID = s '{9DBB482D-4600-43F4-A96E-AEF8F600574E}'
		CurVer = s 'EncodeServer.Encoder.1'
	}
	NoRemove CLSID
	{
           ForceRemove {9DBB482D-4600-43F4-A96E-AEF8F600574E} = s 'Encoder Class'
		{
			ProgID = s 'EncodeServer.Encoder.1'
			VersionIndependentProgID = s 'EncodeServer.Encoder'
			InprocServer32 = s '%MODULE%'
			{
			}
			'TypeLib' = s '{EECD8638-CFC3-43F8-A10C-D4C9573E26DD}'
		}
	}
}

   
Этот сценарий вносит в раздел реестра HKEY_CLASSES_ROOT следующие записи:
CLSID, ProgID (обе формы - зависимую и незасимую от версии) и библиотеку типов. Поскольку объект
Encoder находится в DLL-сервере, то дополнительно создается раздел InprocServer32, содержащий
переменную %MODULE%. Обрабатывая сценарий системного реестра, Visual Studio подставит вместо
нее имя исполняемого файла.

   
На следующем шаге мы рассмотрим IDL-файл.



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий