Partage
  • Partager sur Facebook
  • Partager sur Twitter

Probleme de compilation

    4 décembre 2005 à 0:43:06

    Salut à tous :),je demande une chtite aide parce que j'ai un petit probleme de compilation avec Dev-C++ :

    http://www.cppfrance.com/code.aspx?ID=30872
    regardez ( et télécharger ce script ) , c'est plutot marrant , je voudrait changer le texte qui s affiche pour faire genre des chtites blagues chez les potes du genre " Destruction de disque dur en cours .. " et tout , j'ai donc modifié le fichier GHOSTCASM.cpp :

    char Mess1[] = "Preparation pour la destruction du disque dur en cours ";
             char Mess2[] = "Verouillage du disque dur en cours  ";
             char Mess3[] = "Destruction du disque dur en cours ";
             char Mess4[] = "Disque dur detruit !";

    au lieu de ce qu'il y avait avant .
    Jusque la , toutt va bien mais ensuite je n arrive pas a faire un nouvel executable avec mes modifs ... o_O

    Si quelqu'un pouvait m'aider , ce serait vraiment sympas de sa part.

    Merci et @ toute !

    --
    Ziir
    • Partager sur Facebook
    • Partager sur Twitter
      4 décembre 2005 à 1:18:40

      Met le code complet avant et après tes modifs ;)
      • Partager sur Facebook
      • Partager sur Twitter
        4 décembre 2005 à 12:25:32

        Est-ce que t'as fait gaffe que tes chaines de caractères n'était pas plus longue que les originales?
        • Partager sur Facebook
        • Partager sur Twitter
          4 décembre 2005 à 12:34:46

          Bhein en fait la je suis pas sur mon ordinateur donc je peut pas mettre tout le code tout de suite , mais si tu veut voir ce quee ca donne avant , il te suffit de télécharger les fichiers et ouvrir GHOSTCASM.cpp , je n ai changé que ces lignes ci dessus .


          Heu je croit ( car nai pas le code sous les yeux ) que les lignes sont un petit peu plus grandes en effet ...

          Mais je ne pensse pas que le probleme soit la puisque Dev-C++ me parle des includes présentes dans le code .

          Edit : voici le code entier de la page que j'ai modifié :

          // GHOSTCASM.cpp : Defines the entry point for the console application.
          //

          //Petite animation façon intro du film matrix sous mode console
          //
          //par soldier_8514        Soldier_8514@hotmail.com
          //
          //
          //voilà j'ai réalisé la semaine derniere ce type d'animation sous DirectDraw
          //et je me suis amusé à faire la meme chose sous mode console
          //je me sers donc ici de la fabuleuse librairie "econio.h"
          //indispensable pour faire des manipulations de texte qui ont 'de la gueule'
          //
          //note : le nom du projet 'GHOSTCASM'vient du fait que j'étais parti pour le faire en C et
          //en assembleur _ ce qui n'est plus le cas ici _ ce sera pour la prochaine fois lol
          //
          //@+

          #include "stdafx.h"
          #include <Windows.h>
          #include <stdio.h>
          #include <stdlib.h>
          //#include <iostream.h>
          #include "econio.h"
          #include "econio.cpp"
          #include <time.h>


          void main()
          {

          double cpt;
          int couleur;
                   char Mess1[] = "Preparation pour la destruction du disque dur en cours ";
                   char Mess2[] = "Veroulliage du disque dur en cours  ";
                   char Mess3[] = "Destruction du disque dur en cours ";
                   char Mess4[] = "Disque dur detruit !";


                  int print = 0;

          //////on passe en mode plein écran//////////////////////
          keybd_event(VK_MENU,0x38,0,0);
          keybd_event(VK_RETURN,0x1c,0,0);
          keybd_event(VK_RETURN,0x1c,KEYEVENTF_KEYUP,0);
          keybd_event(VK_MENU,0x38,KEYEVENTF_KEYUP,0);
          ///////////////////////////////////////////////////////
                         

          ///////on choisi le fond noir///(on est obligé de le choisir avant de choisir
          ///////la couleur du texte sinon ça fait NimporteNaWAk avec la couleur de fond)
          textbackground(0);                                         



          ////on attaque avec la premiere animation
          ////on affiche aléatoirement (en x et y ) des caracteres de la table Ascii
          ////choisis aleatoirement entre 32 et 255 ( ceux que l'on peut afficher koi ...)
          for (cpt = 0; cpt < 25000; cpt++)
          {

                  ////on va définir la couleur de notre petite animation ici
                  ////soit le caractere affiché est vert _ soit il est blanc
                  ////pour corser un peu la chose on affichera 1 fois sur 20 un caractere blanc
                  ////dans les autres cas il est vert ...

                          couleur=(rand() % 20);
                                  if (couleur==5)
                                  {
                                          textcolor(15); //Selection de la couleur du texte
                                  }
                                  else
                                  {       
                                          textcolor(10);; //Selection de la couleur du texte
                                  }
                  ////on positionne le curseur aléatoirement
                  ////entre 0 et 80 pour le x
                  ////entre 0 et 80 pour le y
                  gotoxy( (rand() % 80), (rand() % 80));

                  ////et on affiche le caractere choisit aléatoirement dans la table Ascii entre 32 et 255

                  printf("%c",char(32+(rand() % 223)));

                  /////note pour les inconditionnels du cout<< ( ouai toi là bas ! )
                  ////j'ai essayé                                                        
                  //cout<<char(32+(rand() % 223));
                  ////mais ça affichait plusieurs caracteres au lieu d'un seul (je c pas d'où vient ce pb )
                  ////enfin bref / printf nous sauve la vie


          }
                                          ///efface l'écran
                                          clrscr();
                                  //      AfficherCurseur(1)
                                          /////////////////////////////////////////////////////////////////////////////////              
                                          //on passe à l'animation avec les commentaires
                                          //contenus dans les tableau Mess1 Mess2 Mess3 et Mess4

                                          ///on avance caractere par caractere dans le tableau Mess1
                                          for (print = 0; print < (strlen(Mess1)+1); print++)
                                          {
                         
                                                  ///on positione le curseur (0+print sert à avancer _bon vous l'aviez deviné...)
                                                  gotoxy( 0+print, 5);
                                                  ///on affiche le caractere lu
                                                  printf("%c",Mess1[print]);
                                                  ///histoire de faire un peu plus vrai on va utiliser des temps d'attente
                                                  ///histoire de faire style 'je le tapes à la main '
                                                  Sleep(80+(rand() % 80));

                                          }

                                      ///on attend 1200 ms avant de passer au second commentaire
                                          Sleep(1200);
                                         
                                          ///et rebelotte // c'est exactement la meme chose ....
                                          for (print = 0; print < (strlen(Mess2)+1); print++)
                                          {
                         
                    
                                                  gotoxy( 0+print, 7);
                                                  printf("%c",Mess2[print]);
                                                  srand( (unsigned)time( NULL ) );
                                                  Sleep(80+(rand() % 80));

                                          }

                                          Sleep(1200);

                                          for (print = 0; print < (strlen(Mess3)+1); print++)
                                          {
                         
                    
                                                  gotoxy( 0+print, 9);
                                                  printf("%c",Mess3[print]);
                                                  srand( (unsigned)time( NULL ) );
                                                  Sleep(80+(rand() % 50));

                                          }

                                 
                                          Sleep(1200);

                                          clrscr();

                                          for (print = 0; print < (strlen(Mess4)+1); print++)
                                          {
                         
                    
                                                  gotoxy( 0+print, 5);
                                                  printf("%c",Mess4[print]);
                                                  srand( (unsigned)time( NULL ) );
                                                  Sleep(80+(rand() % 50));

                                          }

                                          gotoxy( 0, 49);
                                          Sleep(2000);

          }



          P.S : merci de bien vouloir m'aider .

          --
          Ziir
          • Partager sur Facebook
          • Partager sur Twitter
            4 décembre 2005 à 16:37:41

            Citation

            Mais je ne pensse pas que le probleme soit la puisque Dev-C++ me parle des includes présentes dans le code .



            Donc le problème vient pas de ton code mais du fait que tu n'a pas les lib nécessaires pour compiler.
            • Partager sur Facebook
            • Partager sur Twitter
              4 décembre 2005 à 16:46:11

              Ce qui voudrait dire que l auteur de ce programme n'as pas mis tous les fihciers nécessaires pour pouvoir le modifier ...
              C'est genant ....
              Bha puisque c'est ainsi je vait arretter de bosser la dessus :)

              Merci quand meme a ceux qui m'on aidés , si jamais quelqu'un découvre que c'est a causde de quelque chose d autres , il peut continuer a poster ici :)

              --
              Ziir
              • Partager sur Facebook
              • Partager sur Twitter
                4 décembre 2005 à 16:50:45

                Je pense qu'il faut que tu mette les fichier *.h du zip dans le même répertoire que ton script, que tu télécharge la lib de windows (ça doit être sur la plateforme msdn), que tu enlève les .h là où les librairies sont entourés par <> et normalement ça devrait marcher à la compilation.

                EDIT : ok je vais mieux expliquer (enfin si le serveur du site veux bien ^^ ) pour les librairies du zip je pense que tu as compris, en fait dans ta source quand tu met des include entouré par "" le compilateur va chercher ces librairies dans le répertoire du script.

                Pour la librairie de Windows il s'agit en fait de l'API Windows (les fenêtres entre autres), elle est donné quand tu télécharge le compilateur gratuit de Microsoft mais je ne crois pas que Dev-cpp l'ai par défaut donc c'est à toi de la rechercher (essai sur le site de microsoft developper ou via google).
                RE-EDIT : en fait je viens de vérifier Dev-cpp a bien la librairie windows donc remplace ton #include <Windows.h> par #include <windows.h>

                Quand aux libraries entourées par <> il s'agit le plus souvent des bibliothèques standards ou alors fourni par le compilateur et donc quand il les rencontres il va chercher les librairies dans son dossier à lui et donc je crois que c'est par convention que quand on inclus une librairie standard (genre stdlib ou stdio) on ne met pas le .h
                • Partager sur Facebook
                • Partager sur Twitter
                  4 décembre 2005 à 16:54:11

                  Ils sont déja dans le meme répertoire , mais je ne comprend pas trop ce que tu dit ensuite .
                  Peut tu expliquer un peu plus stp ?



                  Voici les différentes erreurs que me balance dev-c++ :

                  24 E:\Prog C C++\GHOSTCASM\GHOSTCASM.cpp In file included from E:\Prog C C++\GHOSTCASM\GHOSTCASM.cpp

                  \Prog C C++\GHOSTCASM\/econio.h E:\Prog C C++\GHOSTCASM\E econio.h: No such file or directory.

                  25 E:\Prog C C++\GHOSTCASM\GHOSTCASM.cpp In file included from E:\Prog C C++\GHOSTCASM\GHOSTCASM.cpp

                  87:85 E:\Prog C C++\GHOSTCASM\\econio.cpp [Warning] no newline at end of file

                  30 E:\Prog C C++\GHOSTCASM\GHOSTCASM.cpp `main' must return `int'
                  --


                  Ziir
                  • Partager sur Facebook
                  • Partager sur Twitter
                    4 décembre 2005 à 18:39:23

                    Essais de bouger ton script et l'ensemble dans un répertoire sans espace (genre ton ton cas E:\prog\ ), par expérience les compilateurs n'aime pas trop les espaces dans les chemins. En fait dans les premières ligne c'est ça ton problème, le compilateur cherche dans des répertoires erronés donc ça ne peut forcément pas marché, le [Warning] je ne sais pas si c'est important mais ça n'empêche pas la compilation, quand au dernier il est là parce que c'est mieux quand tu fait un programme d'écrire int main() {} au lieu de void main() {} et à la fin de ton programme de mettre un return 0; (juste avant la dernière accolade).
                    • Partager sur Facebook
                    • Partager sur Twitter
                      4 décembre 2005 à 19:03:46

                      il me reste des erreurs :

                      24 E:\Prog\GHOSTCASM\GHOSTCASM.cpp In file included from E:\Prog\GHOSTCASM\GHOSTCASM.cpp

                      \Prog\GHOSTCASM\/econio.h E:\Prog\GHOSTCASM\E econio.h: No such file or directory.

                      et

                      25 E:\Prog\GHOSTCASM\GHOSTCASM.cpp In file included from E:\Prog\GHOSTCASM\GHOSTCASM.cpp
                      • Partager sur Facebook
                      • Partager sur Twitter
                        5 décembre 2005 à 16:19:57

                        Apparement c'est toujours le même problème, le compilateur ne trouve pas la bibliothèque. La seule solution que je vois maintenant c'est de mettre le chemin complet vers le fichier mais je ne sais pas si le compil va comprendre : #include "E:\Prog\GHOSTCASM\econio.h" et si ça marche toujours pas essaie de remplacer les \ par des / pour le faire à la mode unix :lol:
                        • Partager sur Facebook
                        • Partager sur Twitter

                        Probleme de compilation

                        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                        • Editeur
                        • Markdown