MCPcopy Create free account
hub / github.com/BeneficialCode/WinArk / WriteEventData

Method WriteEventData

WinArk/BinaryEventDataSerializer.cpp:41–78  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

39}
40
41void BinaryEventDataSerializer::WriteEventData(StructuredDirectory* dir, const EventData* data) {
42 auto file = dir->CreateStructuredFile(L"Basic");
43 CompoundFileReaderWriter writer(*file);
44 writer.Write(data->GetEventDescriptor());
45 writer.Write(data->GetEventName());
46 writer.Write(data->GetTimeStamp());
47 writer.Write(data->GetIndex());
48 writer.Write(data->GetProcessId());
49 writer.Write(data->GetThreadId());
50 writer.Write(data->GetProviderId());
51
52 //WriteSimpleData(dir, L"EventDescriptor", &data->GetEventDescriptor(), sizeof(EVENT_DESCRIPTOR));
53 //WriteSimpleData(dir, L"EventName", data->GetEventName());
54 //WriteSimpleData(dir, L"Index", data->GetIndex());
55 //WriteSimpleData(dir, L"ProcessId", data->GetProcessId());
56 //WriteSimpleData(dir, L"ThreadId", data->GetThreadId());
57 //WriteSimpleData(dir, L"ProcessName", data->GetProcessName());
58 //WriteSimpleData(dir, L"ProviderId", data->GetProviderId());
59 //WriteSimpleData(dir, L"TimeStamp", data->GetTimeStamp());
60 auto props = data->GetProperties();
61 if (!props.empty()) {
62 auto file = dir->CreateStructuredFile(L"Properties");
63 CompoundFileReaderWriter writer(*file);
64
65 for (auto& prop : props) {
66 writer.Write(prop.Name);
67 writer.Write(prop.GetLength());
68 file->Write(prop.GetData(), prop.GetLength());
69
70 //WriteSimpleData(propDir.get(), prop.Name.c_str(), prop.GetData(), prop.GetLength());
71 }
72 }
73 auto stackData = data->GetStackEventData();
74 if (stackData) {
75 auto stackDir = dir->CreateStructuredDirectory(L"Stack");
76 WriteEventData(stackDir.get(), stackData);
77 }
78}
79
80void BinaryEventDataSerializer::WriteSimpleData(StructuredDirectory* dir, PCWSTR streamName, const void* data, int size) {
81 auto file = dir->CreateStructuredFile(streamName);

Callers

nothing calls this directly

Calls 11

CreateStructuredFileMethod · 0.80
GetTimeStampMethod · 0.80
GetIndexMethod · 0.80
GetProcessIdMethod · 0.80
GetThreadIdMethod · 0.80
emptyMethod · 0.80
GetStackEventDataMethod · 0.80
WriteMethod · 0.45
GetLengthMethod · 0.45
GetDataMethod · 0.45

Tested by

no test coverage detected