導航:首頁 > 數據處理 > 不知道模塊地址如何讀取數據

不知道模塊地址如何讀取數據

發布時間:2023-01-04 06:12:48

① 請問如何讀取系統內存中任意地址的數據,如0x100,用C語言實現。

首先要明確windows 的內存管理方式, (在 windows XP 非 3GB enabled)。 ring3程序也就是用戶空間的進程可以用的空間地址是 virtual address 0x00000000 - 0x7FFFFFFF ,注意virual address 呵呵,而 0x80000000 以後為內核使用 都是 virtual address啊。ring3 進程不能讀取 0x80000000 以後的地址。0x0000000 - 0x7FFFFFFF 也並不是都可以讀取的。這個空間中會根據系統需要由系統分配一定的 region 或一系列的 regions。只有位於這些 regions 的地址是可以被ring3 進程讀取的。所以比如任意地址 如 0x100 若這個地址不再任何一個 region 當中。就會出錯(指定地址無內存)。實際上即是說,系統沒有為 0x100 這個地址建立頁表映射,也就不可讀。 若你所說想要實現讀取內核地址空間,也只能讀取已經建立了頁表映射的地址。不然同樣要出錯。若想要判斷一個地址是否是有效的,如你所擔心的,用戶可能傳給你一個非法地址。可以用一些api 判斷合法性。如 VirtualQuery 更強大的還有VirtualQueryEx。 http://msdn.microsoft.com/en-us/library/aa366902(VS.85).aspx。 也可以用異常處理歷程。 try except (c++),c也有異常處理 不過不好用。

閱讀全文

與不知道模塊地址如何讀取數據相關的資料

熱點內容
合肥紅酒代理商有哪些 瀏覽:847
湖人交易動向如何 瀏覽:16
程序員熬夜加班到多少點 瀏覽:419
新上一個功能需採集哪些數據 瀏覽:702
招聘基礎信息怎麼填 瀏覽:981
劉總現在在哪個市場 瀏覽:429
公交車驅動程序怎麼取名 瀏覽:268
被抽樣調查的原始數據叫什麼 瀏覽:868
人保代駕如何使用代理 瀏覽:667
怎麼引用表格中變動的數據 瀏覽:153
如何評選貧困戶程序 瀏覽:234
房子按揭期間怎麼變更信息 瀏覽:807
如何寫社保方面的信息 瀏覽:108
普通工是什麼技術等級 瀏覽:464
大梅子祛斑膏如何代理 瀏覽:245
代售和代理有什麼不同 瀏覽:434
原生之罪四個程序員為什麼被殺 瀏覽:147
如何隱藏篩選的數據 瀏覽:202
石龍崗寵物市場在哪裡 瀏覽:199
松崗廚房凈水器代理商怎麼選 瀏覽:770