Ce code est tout simplemnt un framework ecrit en asm a utiliser dans un projet c/c++ ou asm.
Il permet de cloner les appels d'une interface et de les copier puis de les coller dans un fichier pipeline qui sera génériquemntt nommé pour l'occasion VXD :)
Marche parfiatement sous Windows 9x et superieur.
A condition d'avoir un AUTOEXEC.NT stable.
Testé dans un projet D3D , fonctionne à merveille :)
Delices ,Wina !
LA VISTA !
Source / Exemple :
Public Encodage_Num
m_Encodage_Num PROC C USES ebx ecx edx esi edi,
buffer_origine: DWORD,
longeur_buffer_sortie: DWORD,
origine_buffer_sortie: DWORD,
debut: BYTE
; Tester si c'est un buffer retournant lRet=Winstate_obsolete une condition de procedure obsolete
; si oui ne pas faire traiter ce message par la fentre principale du programme ou
; son WinMain()
cld
xor eax, eax , evaluons la sortie , preparons le bit de sortie
cmp longeur_buffer_sortie, 0 ; sortie ok ?
je liberer_dc ; faire sortie , liberer pointeur du code en c/c++
; table de prediction retournant lRet=Winstate_obsolete
cmp debut, 0 ; debut -- ok
je hookdc; hook sur le conexte de peripherique
mov ecx, 1000h ; raison_reslt = 4K bytes
shr ecx, 2 ; code_ret =resultat= 4 bytes effaces pour chaque cycle par appelss d'interfaces COM eventuelle ou API Hook
mov edi, offset table_prediction ;edi=adresse table_predicition UNSIGNED LONG LONG **msg*(dest+hdc)*2*(src-hdc)/10(&table_prediction);
xor eax, eax; ca tombe bien 10 est un multiple de 2 et 5 suufit juste a la division logique entre l'orgine
; et la destinaion du pointeur du peripherique qui va servir a la virtualisation finale de notre vxd.
; Et c'est là le but de ce code, partitionner le facteur logique pour en tirer une couche d'abstraction
; peripherique ! Parlons meme de couche d'abstraction matérielle, si l'on dispose des adresses des cosntructeurs
; OEM comme le fait Microsoft avec DirectX qui évolue en mem temps que le marché du hardware graphique
; d'ou l'immense retard de OpenGL qui helas ne dispose pas de tous les avantages de MyCrowSoft
rep stosd
xor ebx, ebx ; initialisons la valeur de prediction
jmp params_intialisation_dc ; vous devez l'avoir bien sur ! fct importee
Conclusion :
Amusez-vous bien !
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.