在给定路径中读取保存的EVTX文件
Reading a saved EVTX file in the given path
我当前正在研究一个我需要阅读Windows事件的项目。我正在使用Win API的OpenEventLog((和ReadEventLog((。我可以使用该事件的打字机阅读系统中的事件。但是我需要指定我从EventViewer保存的.EVTX文件的文件名或文件路径。我尝试了以下代码,
HANDLE logHandle = OpenEventLog(NULL, "C:\Users\MyAccount\Documents\myevents.evtx");
DWORD status = GetLastError();
if(logHandle == NULL){
cerr<<"NO HANDLE GENERATED!!!"<<endl;
}else if(status == ERROR_INVALID_HANDLE){
cerr<<"INVALID HANDLE!!!"<<endl;
}else if(status!=0){
cout<<"OPENEVENTLOG ERROR STATUS::>"<<status<<endl;
}
但找不到指定的文件,而是切换到默认的应用程序事件。谁能告诉我问题可能是什么?或者如果代码中有任何更改?
ps:我什至尝试将文件放在项目文件夹中,并仅指定文件名(myevents.evtx(,但仍然不起作用。我也尝试直接读取EVTX,如" reading .EVT/.EVTX文件"中所示直接",但后来我发现这是无法做到的。显然,没有Win API或不编写一大堆解析器代码,就无法直接阅读它们。
预先感谢。
好吧,事实证明OpenEventLog()
并不是打开保存的.evtx
文件。我应该为此使用OpenBackupEventLog()
。
相关文章:
- 在全局变量中保存类的实例以重新创建类(创建"backup")
- 如何在选项卡视图Qt中设置一个新项目,并保存以前的项目
- 如何使用OpenCV将RBG图像转换为HSV,并将H、S和V值保存为C++中的3个独立图像
- 将字符指针十六进制转换为字符串并保存在文本文件C++中
- 在没有定义返回类型的函数中返回布尔值,并将结果保存在无错误的char编译中-为什么
- EvtExportLogneneneba API正在将远程计算机的事件日志保存到远程PC本身.如何将其保存到主机
- 在C++中将类(带有Vector成员)保存为二进制文件
- C++.我想将更改后的特定字符行保存在字符串中
- 使用FFMPEG将RGB图像序列保存到.mp4时出现问题
- 将RGB图像保存为PPM格式
- 哈希文件递归并保存到矢量Cryptopp中
- 如何将二进制格式的 C++ 对象的 std::vector 保存到磁盘?
- 无法通过头文件保存变量的值
- 我们可以将数据永久保存为数据结构吗?
- 我的程序有一个保存配置文件的GUI,如何双击此配置文件以直接加载带有配置数据的GUI?
- 保存/加载大量短数组到二进制文件
- Gstreamer:每 5 秒使用多文件墨水保存图像/jpeg
- 如何访问由共享指针保存的类方法?
- 为什么签名字符可以保存大于 127 的值?
- 在给定路径中读取保存的EVTX文件