我有一個DLL,它導出的函數...GCC出口裝飾功能名稱只能從DLL
extern "C"
int __stdcall
MP_GetFactory(gmpi::IMpUnknown** returnInterface)
{
}
我與代碼:: Blocks的GCC編譯器(V3.4.5)編譯此。問題:產生DLL導出函數裝飾名稱...
[email protected]
此加載失敗,應該是普通的老...
MP_GetFactory
我研究這個約4小時。我認爲--add-stdcall-alias是解決這個問題的選項。我的代碼:: Blocks的日誌顯示...
的mingw32-G ++ EXE -shared -Wl, - 出IMPLIB =斌\調試\ libGainGCC.a輪候冊, - DLL OBJ \調試\ se_sdk3 \ mp_sdk_audio.o obj \ Debug \ se_sdk3 \ mp_sdk_common.o obj \ Debug \ Gain \ Gain.o obj \ Debug \ Gain \ gain.res -o bin \ Debug \ GainGCC.sem --add -stdcall -alias -luser32
..所以我認爲那是正確的選擇呢?但沒有運氣。 Dependancy Walker僅顯示正在輸出的裝飾名稱。 我得到它通過使用__cdecl而不是__stdcall工作,名稱然後導出正常,但函數調用時調用堆棧(因爲調用者期望其他調用約定)。