좋습니다. 이상합니다. 그런 코드 줄을 본 것은 처음입니다. 기본적으로 프로그램의 PE 헤더에서 오프셋 (주소)을 지정하면 응용 프로그램의 진입 점이 호출됩니다.void 포인터 void 형 캐스트 함수 호출?
내가 알듯이 - 최근에 내 자신의 PE 로더를 작성하여 연주했습니다. 나는 아직 초보자이며 구조를 이해하려고 시도하고있다. 그러나 그 함수 호출은 정확히 무엇을 의미 하는가?
((void (*) (void)) EntryPoint)();
//where 0x4484502 is gotten from:
PIMAGE_NT_HEADERS nt_header;
DWORD EntryPoint = nt_header->OptionalHeader.ImageBase + nt_header->OptionalHeader.AddressOfEntryPoint;
((void(*)(void))0x4484502)();
오에 같은 이상한 선언을 확인하실 수 있습니다, 난을 참조하십시오. 설명해 주셔서 감사합니다. 나는 전에 공허 (*)를 본 적이 없기 때문에 혼란 스러웠습니다. Google은 아무 것도 쓸모가 없었습니다. 방금 void 포인터 (voidSTAR)를주었습니다. –
는 일반 함수 포인터 :) 도움 다행이 로 선언'복귀 형 (* ptr_name)을 (.. 파라메터), 예를 들어 ' 'INT (* F) (INT 짧은)'포인터는 ,'f'를 int를 리턴하고 int와 short라는 두 개의 매개 변수를 받아들이는 함수에 보낸다. – Jimbo