begin process at 2012 05 29 15:17:58
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Systeme

 > 

PB avec de l'ASM dans VC++ 6 ....


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

PB avec de l'ASM dans VC++ 6 ....

vendredi 20 août 2004 à 18:16:27 | PB avec de l'ASM dans VC++ 6 ....

Foub12

Bonjour...

Je programme sous VC++ 6 et j'ai trouvé sur Internet, la fonction suivante mais elle ne marche pas... Il compile parfaitement mais lors de l'exécution, le code ASM fait tout planter...

Voici la fonction qui doit permettre de un secteur d'une disquette (ce que je veux faire) ou d'un disque et de mettre et de mettre les 512 octets dans mon tableau Buffer : «

int ReadSector(int _Disque, int Tete, int Piste, int Secteur, int Nombre, unsigned char *Buffer)
{
int re = 0;

__asm {

MOV AH,2h


MOV AL, Nombre //Nombre de secteur à lire...
MOV DL, _Disque //Lecteur à lire...
MOV DH, Tete //Tete
MOV CH, Piste //Piste
MOV CL, Secteur //Secteur


MOV BX,DS
MOV ES,BX
MOV BX, word ptr [Buffer]
int 0x13
jc fin
xor AX,AX

fin:
MOV word ptr re,AX
}

return re;
}

»

Voici mon main :

int main()
{
int res; // résultat de la lecture de la disquette
res = ReadSector(0, 0, 0, 1, 1, Buffer);

printf("Resultat : %d\n", res);

return 0;
}

Le programme n'essaye même pas de lire la disquette et il plante en me mettant une erreur mémoire...
HELP ME !!!

Merci d'avance pour votre aide.
Foub
vendredi 20 août 2004 à 19:02:19 | Re : PB avec de l'ASM dans VC++ 6 ....

BruNews

Administrateur CodeS-SourceS
http://www.cppfrance.com/forum.v2.aspx?ID=280594
Tout y est dit et repete au moins 1 fois par semaine.

CreateFile
ReadFile
CloseHandle

ciao...
BruNews, Admin CS, MVP Visual C++
vendredi 20 août 2004 à 22:28:28 | Re : PB avec de l'ASM dans VC++ 6 ....

racpp

Administrateur CodeS-SourceS
Salut,
Ton programme ne peut fonctionner qu'en mode DOS pur. Si tu l'essaies sur Windows, c'est le plantage assuré car il appelle l'interruption "int 0x13". Les interruptions sont interdites sous Windows. Tu peux le tester en démarrant avec une disquette en mode DOS pur. En plus , je ne suis pas sûr que visual c++ puisse compiler des programmes destinés au mode DOS pur. J'ai déja essayé avec des projets "console" mais je recois toujours le message: "This program can'it be run in dos mode". Y'a t-il un moyen de créer des projets pour le mode DOS pur en VC++?. Si tu as le même problème, tu peux utiliser un autre compilateur DOS comme Turbo C++ (2.7 Mo), téléchargeable gratuitement sur le site de Borland. Il faudra juste modifier légérement ton code source et tout marchera très bien. Remplacer "__asm" par "asm" et ajouter ";" à la fin de chaque ligne comme: "mov AH,2h ; ". Tu devra aussi télécharger "Tasm.exe" (132 ko).
A+


Cette discussion est classée dans : buffer, int, mov, asm, secteur


Répondre à ce message

Sujets en rapport avec ce message

Secteur de boot : comment ordonner des commandes ??? [ par Foub12 ] Bonjour,j'ai une question qui me turlupine depuis un petit moment et j'aimerais bien connaître la réponse...Le secteur de boot (d'une disquette par ex Problème ac du inline asm [ par oceax ] Bonjour,je suis débutant en c++ et n'y connais pas encore énormément gd chose...Sur mon dernier programme (un keygen pr crack me que j'ai créé par mes Asm ou SM [ par Joky ] Et oui on voit pas trop la différence entre ces 2 choses lol :) Donc je suis entrain de lire un Tuto sur l'asm avec des ptits exemples n'ayant pas de lecture d'une chaine au clavier :probléme d'execution! [ par infofst ] Bonjour, je suis en train d'écrire un programme qui fait des opérations sur une date saisie au clavier. la lecture de date est en language assembleu Erreur de configuration du port COM, pour communication RS232 [ par StormEnnairo ] Hello World ! (svp permettez moi ce jeu de mot à la noix) Bon j'espère que quelqu'un poura maider, je débute en C, et j'assayes d'ecrire et lire des probleme avec une chaine de caractere [ par joben22 ] Bonsoir, j'ai un petit soucis avec une fonction que j'essaie de coder. En fait, je lis le contenue d'un fichier, le place dans un char* et la j'aimer Besoin d'aide pour résoudre une erreur C2664 [ par jalmjj ] Bonjour, je suis nouveau ici et débutant en C++ (je suis étudiant en IUT Génie Electrique et Informatique Industrielle et nous n'avons appris que les ASM + C++, Aidez-moi SVP :D [ par belette321 ] Bonjour, voilla j'esseil de faire un anti-hack mais j'optien une erreur lors de se code... : [code=cpp]__asm{ mov eax, WriteProcessMemory; IAT mov Besoin d'aide [ par romainbisson ] Bonjour,j'ai besoin de faire un programme qui lit ligne par ligne un fichier en recuperant a certains emplacement de la ligne, la valeur :exemple de l blocage interface utilisateur [ par totoscill ] Bonjour,Je développe une application me permettant de piloter un outil avec labwindows CVI 8.5. J'utilise une interface utilisateur et une boucle whil


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,608 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales