2012-07-05 15 views
2

Windows 7의 구조적 오류 처리 복구 코드 (예 : SEH 처리기가 완료되고 "CONTINUE"코드를 다시 전달한 후)가 진행됩니다.Windows32 API : "mov edi, edi"기능 항목?

7783BD9F mov   edi,edi 
7783BDA1 push  ebp 
7783BDA2 mov   ebp,esp 
7783BDA4 push  1 
7783BDA6 push  dword ptr [ebp+0Ch] 
7783BDA9 push  dword ptr [ebp+8] 
7783BDAC call  778692DF 
7783BDB1 pop   ebp 
7783BDB2 ret   8 

내가의 기능 프롤로그 사용 해요 "푸시 EBP/MOV의 EBP, ESP" 여기에 호출되는 함수입니다. "mov edi, edi"의 목적은 무엇입니까 ?

답변

7

레이몬드 첸 (마이크로 소프트 개발자 중 하나)이 정확한 질문 대답했습니다

을 그리고 그는 그 이전 참조 링크 :

기본적으로 핫 패칭 중에 점프 명령이 삽입되는 공간이 있습니다.

+0

글쎄, 내가 얻은 가장 빠른 답변이다. 고마워, 벤. (너무 빨리, 그래서, 아직 받아 들일 수 없을지도 몰라!) –

+0

@IraBaxter : 당신은 아주 환영합니다. BTW, 나는 당신이 일하는 제품의 유형을 고려하여 종교적으로 "The Old New Thing"을 읽지 않는다는 것에 상당히 놀랐습니다. 하지만 레이몬드는 너무 많이 쓴 것을 잊어 버리기 쉽습니다. –

+0

"올드 뉴 데일"에 대해 모르기 때문에 어쩌면? 그것은 무엇이며 왜 내가 신경 써야합니까? –