Блокировка приложения журнала - невозможно записать в журнал событий Windows - PullRequest
1 голос
/ 28 июня 2011

Я изучаю Ms Enterprise Library 5.0 и у меня возникла проблема с блокировкой журнала приложений: пример приложения «Регистрация» (http://entlib.codeplex.com/releases/view/46741#DownloadId=140302) не записывает в журнал событий Windows (категория ведения журнала - «Общие», функция главного меню «SimpleLogWriterWrite". Один раз он создал новый журнал событий Windows с заданным именем, а в другой раз - нет (с другим именем). Один раз он записал сообщения в существующий журнал, в другой раз - нет. В чем проблема?

Спасибо.

Ответы [ 2 ]

3 голосов
/ 28 июня 2011

При входе в журнал событий Windows источник события должен быть зарегистрирован в операционной системе, прежде чем вы сможете успешно войти в систему, используя его.Обычно .NET Framework автоматически создает источники событий при первом их использовании, но для создания источников событий требуются права администратора.Вы можете запустить приложение от имени администратора один раз и зарегистрировать его или выполнить поиск MSDN для «регистрации источников событий».

1 голос
/ 28 июня 2011

Как журнал событий, так и имена источников должны быть зарегистрированы в Windows, прежде чем вы сможете писать события.Запись событий может выполняться любой учетной записью пользователя, но для создания журнала событий и имен источников требуются права администратора.

Лучший способ настроить ведение журнала событий в производственном приложении - это создать журнал событий и имена источников во время установки., когда вы можете законно требовать права администратора.Самый простой способ сделать это:

  1. Добавить компонент Installer Class в проект приложения.
  2. Добавить компонент EventLogInstaller в область конструкторакомпонента установщика.Это не доступно в панели инструментов по умолчанию, но вы можете легко добавить его из контекстного меню панели инструментов.
  3. Задайте свойства компонента EventLogInstaller, чтобы создать нужный журнал событий и имена источников.
  4. Сконфигурируйте ваш проект установки для вызова настраиваемого действия, а затем укажите его на компоненте Installer вашего приложения.Как именно вы это сделаете, зависит от вашей технологии установки.
  5. Сконфигурируйте ваш проект установки, чтобы запрашивать повышение прав UAC при его запуске.Как именно это сделать, зависит от вашей технологии установки.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...