42 lines
790 B
C
Raw Normal View History

2019-09-23 16:46:57 +03:00
//#
//# Copyright (C) 2018-2019 QuasarApp.
//# Distributed under the lgplv3 software license, see the accompanying
//# Everyone is permitted to copy and distribute verbatim copies
//# of this license document, but changing it is not allowed.
//#
2019-03-17 18:42:07 +03:00
#ifndef PE_H
#define PE_H
2019-03-20 18:05:14 +03:00
#include <QFile>
2019-03-17 18:42:07 +03:00
#include <QString>
2019-03-22 23:36:22 +03:00
#include <QVector>
2019-03-18 10:33:03 +03:00
#include "igetlibinfo.h"
2019-03-17 18:42:07 +03:00
2019-03-23 20:40:33 +03:00
namespace peparse {
struct parsed_pe_internal;
}
2019-03-18 10:33:03 +03:00
class PE : public IGetLibInfo {
2019-03-17 18:42:07 +03:00
2019-03-17 20:16:48 +03:00
private:
2019-03-21 00:34:57 +03:00
2019-08-31 22:22:26 +03:00
bool getDep(peparse::parsed_pe_internal *, LibInfo &res) const;
2019-03-18 17:12:40 +03:00
2019-03-17 18:42:07 +03:00
public:
enum class RunType: unsigned short {
_UNKNOWN = 0x0,
_32bit = 0x10B,
_64bit = 0x20B,
_ROM = 0x107,
};
PE();
2019-03-18 10:33:03 +03:00
2019-08-31 22:22:26 +03:00
bool getLibInfo(const QString& lib, LibInfo& info) const override;
2019-03-18 17:12:40 +03:00
~PE() override;
2019-03-17 18:42:07 +03:00
};
#endif // PE_H