На этом шаге мы рассмотрим определение потоковой модели в реестре.
Серверы, встраиваемые в процесс, должны указывать тип используемой потоковой модели в реестре, так как они
обычно не обращаются к CoInitializeEx(). Когда клиент создает объект СОМ-сервера, встраиваемого
в процесс, СОМ обращается к соответствующему разделу реестра за информацией о его потоковой модели,
чтобы узнать, нужен ли маршалинг указателя на интерфейс.
Для указания типа потоковой модели в реестр помещается параметр ThreadingModel в разделе
HKEY_CLASSES_ROOT\CLSID\CLSID_компонента\InProcServer32
ThreadingModel принимает одно из следующих значений:
- None - поддерживается только однопоточная модель;
- Apartment - поддерживается модель разделенных потоков;
- Free - поддерживается модель свободных потоков;
- Both - поддерживаются обе модели: и разделенных, и свободных потоков.
На следующем шаге мы рассмотрим элементы управления на базе ActiveX.