Для целей отладки в целях получения аргументов некоторой функции в скомпилированной библиотеке при каждом вызове. Я знаю, что могу перекомпилировать библиотеку, но для некоторых библиотек может потребоваться половина дня (например, Qt).C++ функция hook от скомпилированной библиотеки для отладки
Рассмотрим эту функцию в скомпилированной библиотеке
class SomeClass
{
public:
static QString getUpper(const QString &str);
};
программа, которая включает в себя этот SomeClass из библиотеки
void printArguments(const QString &str)
{
qDebug() << str; //here we print argument
}
int main()
{
//function that I need
hookFunction((void*)&SomeClass::getUpper, (void*)&printArguments);
SomeClass::getUpper("Hi"); // here I will see "Hi" in console
}
Я нашел similar question, но мне не нужен DLL инъекции. Это моя программа, которая включает в себя библиотеку.