Cet example montre comment faire une dll en assembleur sans utiliser d'api.
très peut de code.
pour tester editez le fichier bat et modifier les chemins si il le faut.
Source / Exemple :
.486
.model flat,stdcall
.code
DLLMain proc p1,p2,p3
mov eax,1
ret
DLLMain endp
;additionne p2 et p3 resultat dans p1
Addptr2 proc export p1:ptr,p2,p3
push esi
mov esi,p1
mov eax,p2
add eax,p3
mov [esi],eax
mov eax,0
pop esi
ret
Addptr2 endp
;additionne p1 et p2 la fonction retourne le resultat
Add2 proc export p1,p2
mov eax,p1
add eax,p2
ret
Add2 endp
;multiplie p1 par p2 la fonction retourne le resultat
Mull2 proc export p1:WORD,p2:WORD
movsx eax,p1
movsx ebx,p2
imul ebx
ret
Mull2 endp
;met les valeurs p2,p3 et p4 dans la stucture p1
CrStruc proc export p1:ptr,p2,p3,p4
push esi
mov esi,p1
mov eax,p2
mov [esi],eax
mov eax,p3
mov [esi+4],eax
mov eax,p4
mov [esi+8],eax
pop esi
ret
CrStruc endp
end DLLMain
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.