인라인 어셈블리가 x64에서 지원되지 않습니다. 나는 집회에 익숙하지 않아서 나를 잘 돕는 누군가에게 나에게 도움을 청하고 싶다. 누구든지이 코드를 32 비트에서 64 비트로 변환 할 수 있습니까? MASM이나 컴파일러 내장 함수를 사용할 수 있지만이 코드를 변환하는 방법은 약간 혼란 스럽습니다.32 비트 ASM을 64 비트로 변환하십시오.
#define get_member_function_address_vc8(member_function_address, member_function_type)\
void* member_function_address; \
{ \
__asm \
{ \
mov eax,offset member_function_type \
}; \
__asm \
{ \
mov member_function_address, eax \
}; \
}
안부, 마크
아날로그와 eax의 64 비트 레지스터를 rax라고합니다. –
무엇을하려고합니까? 이 매크로는 두 번째 인수의 내용을 첫 번째 인수로 옮기는 함수를 선언합니다 (호출하지 않습니다). 또한 현대 컴파일러가 싫어할 수있는 구식 C (K & R 인수 유형 선언, 암시 적 int)입니다. –
'member_function_type'이란 무엇입니까? –