Поделиться через


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+, установленным в серверном приложении COM+ (далее называемые серверными компонентами), выполнять пользовательскую инициализацию и очищать код. Экземпляр каждого компонента, реализующего IProcessInitializer интерфейс , будет создан и сохранен в течение всего процесса. При реализации ServicedComponentв параметре InitializesServerApplication в COMAdminCatalogObject коллекции Components необходимо задать значение true во время регистрации компонента, чтобы методы интерфейса вызывались во время запуска и завершения работы.

С помощью событий и можно инициализировать Shutdown ресурсы, создавать подключения, инициализировать Startup общие данные и выполнять код очистки. Однако доступ к состояниям, характерным для COM+, не требуется, так как экземпляры серверных компонентов еще не созданы. Кроме того, код в Startup событиях и Shutdown должен возвращаться как можно быстрее, так как система ожидает Dllhost.exe только 90 секунд, чтобы подготовиться к приему активаций после запуска процесса. Если Dllhost.exe не сообщает о готовности в течение 90 секунд, система завершает процесс; таким образом, вся обработка инициализации должна быть завершена в течение этого периода времени. Каждый серверный компонент, участвующий в инициализации, должен поддерживать IProcessInitializer интерфейс . При DllHost.exe запуска COM+ создает все серверные компоненты, которые запросили эту службу, вызывает QueryInterfaceIProcessInitializer интерфейс и вызывает функцию Startup . Аналогичным образом, когда процесс DllHost.exe завершает работу, он вызывает функцию Shutdown для ранее сохраненных указателей интерфейса.

Методы

Shutdown()

Выполняет действия для завершения работы. Вызывается при закрытии программы Dllhost.exe.

Startup(Object)

Выполняет инициализацию при запуске. Вызывается при запуске Dllhost.exe.

Применяется к