IProcessInitializer Интерфейс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Поддерживает методы, которые могут вызываться при запуске или завершении работы компонента COM.
public interface class IProcessInitializer
[System.Runtime.InteropServices.Guid("1113f52d-dc7f-4943-aed6-88d04027e32a")]
[System.Runtime.InteropServices.InterfaceType(System.Runtime.InteropServices.ComInterfaceType.InterfaceIsIUnknown)]
public interface IProcessInitializer
[<System.Runtime.InteropServices.Guid("1113f52d-dc7f-4943-aed6-88d04027e32a")>]
[<System.Runtime.InteropServices.InterfaceType(System.Runtime.InteropServices.ComInterfaceType.InterfaceIsIUnknown)>]
type IProcessInitializer = interface
Public Interface IProcessInitializer
- Производный
- Атрибуты
Комментарии
IProcessInitializer Реализуйте методы интерфейса для обслуживаемых компонентов, если требуется запустить код инициализации или завершения работы при запуске или завершении работы сервера (Dllhost.exe) соответственно.
COM+ предоставляет Startup и события при запуске и Shutdown завершении Dllhost.exe. Эта функция позволяет выполнять настраиваемую инициализацию и очистку кода, устанавливаемые в серверном приложении COM+ (так называемые компонентами сервера). Экземпляр каждого компонента, реализующего IProcessInitializer интерфейс, будет создан и сохранен в течение длительности процесса. При реализации ServicedComponentInitializesServerApplication в коллекции компонентов необходимо задать COMAdminCatalogObject параметр во true время регистрации компонента, чтобы методы интерфейса вызывались во время запуска и завершения работы.
Startup С помощью событий Shutdown можно инициализировать ресурсы, создать подключения, инициализировать общие данные и запустить код очистки. Однако доступ к состояниям, характерным для COM+, не требуется, так как экземпляры компонентов сервера еще не созданы. Кроме того, код в Startup событиях Shutdown должен возвращаться как можно быстрее, так как система ожидает только 90 секунд в течение Dllhost.exe, чтобы подготовиться к приему активаций после запуска системы. Если Dllhost.exe не сигнализирует о готовности в течение 90 секунд, система завершает процесс; Таким образом, все обработки инициализации необходимо выполнить в течение этого периода времени. Каждый серверный компонент, участвующий в инициализации, должен поддерживать IProcessInitializer интерфейс. При DllHost.exe запуске com+ создает все серверные компоненты, запрашивающие эту службу, вызовы QueryInterfaceIProcessInitializer интерфейса и вызовы Startup функции. Аналогичным образом, когда процесс DllHost.exe завершается, он вызывает Shutdown функцию на ранее сохраненных указателях интерфейса.
Методы
| Имя | Описание |
|---|---|
| Shutdown() |
Выполняет действия завершения работы. Вызывается при завершении работы Dllhost.exe. |
| Startup(Object) |
Выполняет инициализацию при запуске. Вызывается при запуске Dllhost.exe. |