В настоящее время вы работаете в автономном режиме; ожидается повторное подключение к Интернету

Как записать в журнал событий с помощью Visual C++

ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.

Эта статья на английском языке:815661
Для Microsoft Visual C#.NET версии данной статьи, см. 307024.
Для Microsoft Visual Basic.NET версии данной статьи, см. 301279.

Это статья ссылается на следующие корпорации Майкрософт.NET Framework библиотеки классов пространства имен:
  • Система
  • System.Diagnostics
ВВЕДЕНИЕ
В данной статье описывается, как добавить собственные записи в журнале событий операционной системы с помощью Microsoft.NET Framework.
Дополнительная информация

Требования

В следующем списке перечислены рекомендованные оборудование программное обеспечение сетевой инфраструктуры и пакетов обновления, необходимо:
  • Microsoft Windows 2000 Professional, Windows 2000 Server Windows 2000 Advanced Server или Windows NT 4.0 Server
  • Microsoft Visual Studio.NET
  • Microsoft Visual Studio 2005

Запись в журнал событий

Ведение журнала событий предоставляет стандартный, централизованный метод для вашего приложения для записи важных событий программного и аппаратного обеспечения. Windows предоставляет стандартный пользовательский интерфейс для просмотра журналов: в окне просмотра событий. С помощью общей среды выполнения Журнал событий компонент, можно подключиться к существующим журналам событий легко, на обоих локальный и удаленный компьютеры, а операции записи в этот журнал. Можно также прочитать операции из существующего входит и создавать собственные журналы событий. В его простейшая форма записи в журнал событий включает несколько этапов создания Образец приложения.

Чтобы сделать это, выполните следующие действия.
  1. Запустите Visual Studio.NET или Visual Studio 2005.
  2. Создание нового проекта Visual C++ управляемое приложение C++.

    Примечание В Visual C++.NET 2003, выполните следующие действия:
    1. В группе Типы проектов, нажмите кнопку Visual Проекты C++.
    2. В группеШаблоны, нажмите кнопкуКонсольного приложения (.(NET).
    В Visual C++ 2005 выполните следующие действия.
    1. В группе Типы проектов, нажмите кнопку Visual C++.
    2. В группеШаблоны, нажмите кнопкуКонсольное приложение CLR.
  3. Добавьте ссылку на system.dll, добавив следующую строку кода:
    #using <system.dll>
  4. С помощью с помощью директивы на Система и System::Diagnostics пространства имен таким образом, нет необходимости указывать объявления из Эти пространства имен в коде. Необходимо использовать следующие инструкции перед любыми другие объявления:
    using namespace System;using namespace System::Diagnostics;
  5. Для записи в журнал событий, необходимо иметь несколько видов информация: ваше сообщение, имя журнала, для которых требуется выполнить запись (это создается, если он еще не существует) и строка, Представляет источник события. Можно зарегистрировать с определенного источника только один журнал событий; Если вы хотите записывать сообщения в несколько журналов необходимо определить несколько источников.
    String *sSource;	String *sLog;	String *sEvent;	sSource = new String("dotNET Sample App1");	sLog = new String("Application1");	sEvent = new String("Sample Event1");
  6. Используйте два статических метода Журнал событий класс, чтобы проверить существование источника и источник не существует, для создания этого источника, с которым связан либо журнала событий. Если указанное имя журнала не существует, имя создается автоматически при первой операции записи в журнал. По по умолчанию, если не указано имя журнала для CreateEventSource метод, файл журнала называется журнал приложений.
    if(!EventLog::SourceExists(sSource)) EventLog::CreateEventSource(sSource,sLog);
  7. Чтобы написать сообщение в журнал событий, можно использовать статические метод Метод EventLog.WriteEntry. Этот метод имеет несколько разных перегруженных версий. Ниже пример кода показывает простейший способ (это принимает строку источника и вашего сообщения) и один из более сложных методов (который поддерживает задание Идентификатор события и события типа):
    EventLog::WriteEntry(sSource,sEvent);	EventLog::WriteEntry(sSource, sEvent, EventLogEntryType::Warning, 235);
  8. Сохраните приложения. Запустите приложение и проверьте журнал приложений в средстве просмотра событий для просмотра новых событий.

Полный пример кода в Visual C++. NET

#include <tchar.h>#using <system.dll>#using <mscorlib.dll>using namespace System;using namespace System::Diagnostics;int _tmain(){	String *sSource;	String *sLog;	String *sEvent;	sSource = new String("dotNET Sample App1");	sLog = new String("Application1");	sEvent = new String("Sample Event1"); if(!EventLog::SourceExists(sSource))   EventLog::CreateEventSource(sSource,sLog);	EventLog::WriteEntry(sSource,sEvent);	EventLog::WriteEntry(sSource, sEvent,		EventLogEntryType::Warning, 234);	return 0;}

Полный пример кода в Visual C++ 2005

#include <tchar.h>#include <stdafx.h>#using <system.dll>#using <mscorlib.dll>using namespace System;using namespace System::Diagnostics;int main(){	String ^sSource;	String ^sLog;	String ^sEvent;	sSource = gcnew String("dotNET Sample App1");	sLog = gcnew String("Application1");	sEvent = gcnew String("Sample Event1"); if(!EventLog::SourceExists(sSource))   EventLog::CreateEventSource(sSource,sLog);	EventLog::WriteEntry(sSource,sEvent);	EventLog::WriteEntry(sSource, sEvent,		EventLogEntryType::Warning, 234);	return 0;}

Внимание! Эта статья переведена автоматически

Свойства

Номер статьи: 815661 — последний просмотр: 06/14/2011 12:57:00 — редакция: 4.0

Microsoft Visual C++ 2005 Express Edition, Microsoft Visual C++ .NET 2003 Standard Edition, Microsoft Visual C++ .NET 2002 Standard Edition

  • kbdebug kbhowtomaster kbeventlog kbhowto kbmt KB815661 KbMtru
Отзывы и предложения
ript>