2
我正在爲內部使用匯編語言編寫的大部分應用程序編寫DLL加載項。我混合託管C++,非託管C++和內聯彙編。必須釋放代碼依賴於通過函數調用保留的ebx嗎?
我剛剛花了幾個小時來調試一個問題,結果發現ebx
在調用主應用程序期間沒有保留。該錯誤只發生在代碼運行在發佈模式和調試器之外的情況下。調試器中的發佈代碼沒有這個問題。
我已經關閉了所有可以用於發佈版本的優化,但它仍然取決於ebx
。我已添加push/pop ebx
作爲解決方法,但此錯誤肯定會再次出現。 :-(
是否可以告訴ebx
可以在函數調用過程中改變了編譯器?
+ 1 Wrapper函數還可以簡化集中最終的日誌記錄,編組,特殊情況,調試斷點設置等。 t會隨着像這樣的特殊接口而增長。 – user786653