2016-12-27 86 views
0

用於調試目的,希望在每次調用時獲取已編譯庫中某些函數的參數。我知道我可以重新編譯庫,但對於某些庫(例如Qt)可能需要半天時間。用於調試的已編譯庫的C++鉤子函數

考慮這個功能在編譯庫

class SomeClass 
{ 
public: 
    static QString getUpper(const QString &str); 
}; 

方案,其中包括從圖書館

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 
} 

這個SomeClass的我已經找到了一些similar question,但我不`噸需要DLL注入。這是我的程序,包括圖書館。

回答

相關問題