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

Method ParseTableEntry

WinArk/KernelModuleTable.cpp:104–134  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

102}
103
104int CKernelModuleTable::ParseTableEntry(CString& s, char& mask, int& select, std::shared_ptr<WinSys::KernelModuleInfo>& info, int column) {
105 switch (column) {
106 case 0:
107 s = info->Name.c_str();
108 break;
109 case 1:
110 s.Format(L"0x%p", info->ImageBase);
111 break;
112 case 2:
113 s.Format(L"0x%X", info->ImageSize);
114 break;
115 case 3:
116 s.Format(L"%u", info->LoadOrderIndex);
117 break;
118 case 4:
119 {
120 std::wstring path = Helpers::StringToWstring(info->FullPath);
121 s = GetCompanyName(path).c_str();
122 if (s.Find(L"Microsoft") == -1 && s.Find(L"YuanOS") == -1) {
123 select |= DRAW_HILITE;
124 }
125 break;
126 }
127 case 5:
128 s = info->FullPath.c_str();
129 break;
130 default:
131 break;
132 }
133 return s.GetLength();
134}
135
136bool CKernelModuleTable::CompareItems(const std::shared_ptr<WinSys::KernelModuleInfo>& p1, const std::shared_ptr<WinSys::KernelModuleInfo>& p2, int col, bool asc) {
137 switch (static_cast<KernelModuleColumn>(col)) {

Callers

nothing calls this directly

Calls 2

FindMethod · 0.80
GetLengthMethod · 0.45

Tested by

no test coverage detected