diff options
| author | Xusheng <xusheng@vector35.com> | 2026-03-04 17:04:53 +0800 |
|---|---|---|
| committer | Xusheng <xusheng@vector35.com> | 2026-03-05 12:59:40 +0800 |
| commit | 432e144beeccf1d9a2d9ed9e7d016384eed0bb32 (patch) | |
| tree | f963730f2b0b18cbc0620a755e6aad415228c2dc /examples/triage/headers.cpp | |
| parent | 3520262824637979418554656607433424896809 (diff) | |
Parse and display PE resource information in triage view. Fix https://github.com/Vector35/binaryninja-api/issues/4052, fix https://github.com/Vector35/binaryninja-api/issues/5607
Diffstat (limited to 'examples/triage/headers.cpp')
| -rw-r--r-- | examples/triage/headers.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/examples/triage/headers.cpp b/examples/triage/headers.cpp index f2165de0..8aff9f59 100644 --- a/examples/triage/headers.cpp +++ b/examples/triage/headers.cpp @@ -306,8 +306,19 @@ PEHeaders::PEHeaders(BinaryViewRef data) AddField("Compiler(s) Used", compilersUsed); } + auto versionInfo = data->QueryMetadata("PEVersionInfo"); + if (versionInfo && versionInfo->IsKeyValueStore()) + { + for (const auto& [key, value] : versionInfo->GetKeyValueStore()) + { + if (value->IsString() && !value->GetString().empty()) + AddField(QString::fromStdString(key), QString::fromStdString(value->GetString())); + } + } + SetColumns(3); - SetRowsPerColumn(9); + size_t numFields = GetFields().size(); + SetRowsPerColumn((numFields + 2) / 3); } |
