0
假設您需要在x86 Windows上掛鉤/繞過__thiscall
類型的函數,並且爲此,您需要將void *傳遞給shim函數。是的,這在技術上是C++的「可怕的濫用」,但這是函數掛鉤,而不是編碼便攜式應用程序的練習。不使用__fastcall掛鉤__thiscall
例如,假設您需要連接的功能,如本:
void __thiscall SomeClass::MemberFunction(int b) { this->somevar = b; }
顯然,這是衆所周知的,你可以只創建一個使用一個額外的ARG處置EDX的__fastcall
功能,但是這是一個有點...跛腳。
所以問題是:你能想到能夠將非靜態C++類成員函數的類型轉換爲void *變量的技巧嗎?