簡體   English   中英

C#運行時的反射

[英]C# Reflection at run-time

我想通過另一個項目獲得有關某個項目的字段,函數和線程的信息。

作為我想要探索的示例項目,我創建了一個初始化為1的字段int .Main調用函數將x的值更改為2.我將Main卡在無限循環中。 我跑了這個項目。

第二個項目:獲取第一個項目的EXE文件的路徑,並加載程序集。 通過反思,我得到了部門,職能和領域的名稱。 我試圖通過函數getValue打印字段x的值。 而不是打印2,1,打印出來。 即,反射是指編譯時的值,而不是運行時。

我該怎么辦?

在另一個過程中,您無法獲得內存中的新值。

使用Reflection,您可以加載該程序集,創建該類的實例並顯式調用Main,然后檢查int的值,因為代碼將由您的進程運行。

不要期望能夠使用Reflection從另一個應用程序的內存空間中嗅探值,這不是Reflection所做的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM