4
我抓起一些code from internet,那應該處理與SEH例外,這個asm代碼如何設置SEH?
ASSUME FS:NOTHING
PUSH OFFSET Handler
PUSH FS:[0]
MOV FS:[0], ESP
...
但FS:[0]
應持處理程序的地址,而不是正確的?
所以mov fs:[0], esp
是錯誤的,因爲目前esp
指出,原fs:[0]
:
堆棧是這樣的:
-----------
| fs:[0] | <-- ESP
-----------
| handler |
-----------
所以,它就不能成爲esp + 4
一樣的東西?我顯然是錯的,但我不明白爲什麼。
此外,請勿像這樣手動修改TEB,而應使用相應的API函數。 – 2013-01-15 12:42:05