調用一個函數,它返回一個object
後,我嘗試在堆棧中的值存儲在一個局部變量,然後將其推回,但它失敗的異常一個簡單的流行,然後加載回不起作用
異常被拋出與調用的目標
代碼如下:
.....
MethodInfo checked_static = typeof(NameSpace1.Class1).GetMethod(
"Check", new Type[1] { typeof(object) });
adderIL.Emit(OpCodes.Callvirt, checked_static);
adderIL.Emit(OpCodes.Stloc_3);
adderIL.Emit(OpCodes.Ldloc_3);
adderIL.Emit(OpCodes.Brfalse, TRUE);
.....
如果我刪除Stloc_3
和Ldloc_3
一切正常,我迷失在這裏。
您的當地聲明如何? – kvb
記錄異常的InnerException。 –
errr,我們必須聲明局部變量?不會Ldloc_3將值上傳到函數中每個堆棧的局部變量數組中? –