何が間違っているのでしょうか。
// add.c int add(int a, int b) { return a + b; } // 開発者コマンド プロンプト for VS2015 cl /c /Od /FAc add.c // add.cod ; Listing generated by Microsoft (R) Optimizing Compiler Version 19.00.24215.1 TITLE C:\add.c .686P .XMM include listing.inc .model flat INCLUDELIB LIBCMT INCLUDELIB OLDNAMES PUBLIC _add ; Function compile flags: /Odtp _TEXT SEGMENT _a$ = 8 ; size = 4 _b$ = 12 ; size = 4 _add PROC ; File c:\add.c ; Line 2 00000 55 push ebp 00001 8b ec mov ebp, esp ; Line 3 00003 8b 45 08 mov eax, DWORD PTR _a$[ebp] 00006 03 45 0c add eax, DWORD PTR _b$[ebp] ; Line 4 00009 5d pop ebp 0000a c3 ret 0 _add ENDP _TEXT ENDS END //test.hsp #uselib "kernel32.dll" #func VirtualProtect "VirtualProtect" var, int, int, var #define global PAGE_EXECUTE_READWRITE 0x00000040 dim fn, 3 temp = 0 VirtualProtect fn, 11, PAGE_EXECUTE_READWRITE, temp fn = $8bec8b55, $45030845, $00c35d0c prm = 3, 4 mes callfunc(prm, fn, 2)