将事件写入事件查看器
我在 C# 中找到了如何向事件查看器添加新事件的示例。 但是,我需要一个用 C++(不是 .NET)编写的示例,在“应用程序”部分下的事件查看器中创建新事件。
I found an example in C# how to add new Event to the Event Viewer.
But, I need an example written in C++ (not .NET) that create new Event to the Event Viewer under the "Application" part.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以从 WINAPI 使用这三个函数:
下面是如何使用这些以及如何在事件日志中正确显示消息的快速示例(为简洁起见,错误处理大多被忽略)。
从以下
Event_log.mc
文件创建包含消息信息的资源:为了构建
.mc
文件和.res
资源文件,我执行了以下命令:这将在当前目录中创建一个名为
Event_log.h
的头文件和一个包含名为Event_log.res
的文件的resources
目录,您必须使用该文件链接到您的应用程序二进制文件。示例
main.cpp
:希望这会有所帮助,但请考虑到这种方法已被弃用,如 @Cody Gray 所述。
You can use these three functions from the WINAPI:
Here is a quick example of how to use these and to display messages correctly in the event log (error handling mostly ignored for brevity).
Create a resource containg message information from the following
Event_log.mc
file:To build the
.mc
file and.res
resource file I executed the following:This will create a header file called
Event_log.h
in the current directory and aresources
directory containing a file namedEvent_log.res
which you must link in to your application binary.Example
main.cpp
:Hope this helps but consider that this approach has been deprecated as stated by @Cody Gray.
您正在查找有关 Windows 事件日志 API 的文档。您需要调用本机 Win32 API 函数,而不是使用 .NET Framework 的包装器,因为您是用非托管 C++ 编写的。
如果您的目标操作系统是 Windows Vista 之前的操作系统(XP、Server 2003 等),则需要使用较旧的 事件日志 API 相反。
You're looking for the documentation on the Windows Event Log API. You'll need to call the native Win32 API functions, rather than use the .NET Framework's wrappers, since you're writing in unmanaged C++.
If you're targeting operating systems prior to Windows Vista (XP, Server 2003, etc.), you'll need to use the older Event Logging API instead.