Для того чтобы разрешить доступ к TraceSrv через сеть, не следует запускать ее как службу, (т. к. после запуска TraceSrv работает как удаленный СОМ+-сервер). Для отладки такая гибкость очень удобна, потому что, запустив TraceSrv в отладчике, можно наблюдать за присоединением к ней клиентов, а при необходимости выполнять и отладку. Мне удобнее всего было, когда и клиентское приложение, и TraceSrv выполнялись под отладчиками на своих машинах. Когда какое-то из приложений достигает точки прерывания, следует приостановить и другое (чтобы избежать любых возможных проблем с тайм-аутами). Я всегда компилировал Visual Basic-клиент до уровня "родного" кода и запускал его под отладчиком Visual C++. Эта тактика гарантировала, что по достижении клиентом точки прерывания он "намертво" останавливается в отладчике. Причина, по которой нельзя остановить клиент, выполняющийся под VB-отладчиком, заключается в том, что с TraceSvr на самом деле соединяется не отлаживаемое приложение, а сам VB-отладчик.
Для того чтобы использовать TraceSrv через сеть, нужно выполнить программу DCOMCNFG.EXE, корректно прописывающую данные о ней в реестр. Первое, что нужно сделать — выполнить для своей машины установку СОМ+-СВОЙСТБ по умолчанию. Перед изменением СОМ+-свойств необходимо проверить с сетевым администратором умалчиваемые СОМ+-свойства в сетевом окружении всей фирмы. Если вы работаете в небольшой сети и обладаете привилегиями суперпользователя, то можно применить установки, перечисленные в табл. 11.1 и, наилучшим образом работавшие на всех машинах, на которых я тестировал TraceSrv.
Таблица 11.1. Умалчиваемые установки DCOMCNFG
На вкладке Default Properties в DCOMCNFG |
Enable Distributed COM Установлен (флажок) On This Computer |
Default Authentication Level Connect |
Default Impersonation Level Identify |
На вкладке Default Security в DCOMCNFG.EXE |
Default Access Permissions Everyone (Bee) Allow Access (Доступ разрешен) INTERACTIVE Allow Access NETWORK Allow Access SYSTEM Allow Access |
Default Launch Permissions Administrators Allow Launch (Администраторы) (Запуск разрешен) Everyone Allow Launch INTERACTIVE Allow Launch NETWORK Allow Launch SYSTEM Allow Launch |
Default Configuration Administrators Full Control Permissions (Полное управление) CREATOR OWNER Full Control Everyone Read (Чтение) INTERACTIVE Special Access (Специальный доступ. Включены все значеия за исключением Create Link, Write DAC и Write Owner) |
SYSTEM Full Control |