IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++Builder Discussion :

[Borland C++ Builder] Le DOS dans un cadre de la Form ?


Sujet :

C++Builder

  1. #1
    Membre averti
    Inscrit en
    Mai 2012
    Messages
    32
    D�tails du profil
    Informations forums :
    Inscription : Mai 2012
    Messages : 32
    Par d�faut [Borland C++ Builder] Le DOS dans un cadre de la Form ?
    Bonjour tout le monde,
    dans le cadre d'un projet simple, je voudrais ex�cuter une ligne de commande mais dont le r�sultat puisse �tre visualis� dans un cadre (un TEdit ???) de ma Form.
    Pour l'instant je fais un ShellExecute(0, 0, "xi_portable_Win.bat", 0, 0 , SW_SHOW );
    Celui-ci contient une requ�te vers un programme qui surveille de l'arduino, donc elle doit rester ouverte.
    Mais j'aimerais que le code qui appara�t sous DOS soit affich� dans un cadre et que je puisse fermer ce cadre pour faire sauter le processus comme quand je ferme la fen�tre DOS.

    Voil� ma liste au P�re Noel
    Et je viens de passer un paquet d'heures � chercher sur le web....ben rien.

    Merci mille fois d'avance si quelqu'un a une piste....

  2. #2
    Membre Expert
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activit� : Responsable de compte
    Secteur : High Tech - Op�rateur de t�l�communications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Billets dans le blog
    1
    Par d�faut
    Fait une recherche Google sur l'usage des PIPES
    tu trouveras beaucoup d'exemples aussi pour c++ Builder
    cdlt
    par exemple http://www.leunen.com/cbuilder/redirect.html
    vous trouverez mes tutoriels � l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les r�gles du forum

  3. #3
    Membre averti
    Inscrit en
    Mai 2012
    Messages
    32
    D�tails du profil
    Informations forums :
    Inscription : Mai 2012
    Messages : 32
    Par d�faut
    Merci des infos ! Mais je suis trop d�butant pour comprendre quoi que ce soit � ces codes....mince !!!

  4. #4
    Membre averti
    Inscrit en
    Mai 2012
    Messages
    32
    D�tails du profil
    Informations forums :
    Inscription : Mai 2012
    Messages : 32
    Par d�faut
    Apr�s quelques mois de boulot mon projet a beaucoup avanc� ! https://github.com/technologiescollege/s2a_fr
    En fait j'ai quasi fini...� part cette int�gration du shell.

    Gr�ce � l'id�e de DjmSoftware j'ai bien avanc� en compr�hension, MAIS j'ai un probl�me dans le CreateProcess.
    En effet je veux ex�cuter l'�quivalent sous DOS de ".\Python\python.exe s2a.py COM13", mais je ne parviens pas � transmettre cette ligne dans CreateProcess, quelqu'un peut me demander de cette simple connerie ?

    Merci beaucoup.

  5. #5
    Membre Expert
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activit� : Responsable de compte
    Secteur : High Tech - Op�rateur de t�l�communications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Billets dans le blog
    1
    Par d�faut
    Salut
    le code suivant est parfaitement fonctionnel tu peux essayer de l'int�grer tout ou en partie dans ton code
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    bool __fastcall TForm1::CreateAndWaitUntilTerminated(char * PrgName, char* ParamList, long* Errorcode)
    {
      unsigned long ProcessResult;
      STARTUPINFO si;
      PROCESS_INFORMATION  pi;
      ZeroMemory(&si,sizeof(si));
      si.cb=sizeof(si);
      bool result=CreateProcess(PrgName,
                                ParamList,
                                NULL,
                                NULL,
                                false,
                                DETACHED_PROCESS,
                                NULL,
                                NULL,
                                &si,
                                &pi);
     if(!result)
      {
        *Errorcode=GetLastError();
        return false;
      }
      do
       {
        Sleep(50);
        Application->ProcessMessages();
        GetExitCodeProcess(pi.hProcess,
                           &ProcessResult);
       }
       while (ProcessResult==STILL_ACTIVE);
       CloseHandle(pi.hThread);
       CloseHandle(pi.hProcess);
       *Errorcode=ProcessResult;
       return true;
     
     
            //TODO: Add your source code here
    }
    cdlt
    vous trouverez mes tutoriels � l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les r�gles du forum

  6. #6
    Membre averti
    Inscrit en
    Mai 2012
    Messages
    32
    D�tails du profil
    Informations forums :
    Inscription : Mai 2012
    Messages : 32
    Par d�faut
    Merci ! Mais j'ai toujours des pb quand j'utilise mon code (que j'ai repiqu� du lien que tu m'avais d�j� mis) ou le tien, et je pense que c'est d� � mon appel � CreateProcess. Quand je clique sur un bouton je veux qu'il ex�cute �a :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    
      //create pipe for the console stdout
      SECURITY_ATTRIBUTES sa; 
      ZeroMemory(&sa,sizeof(SECURITY_ATTRIBUTES)); 
      sa.nLength=sizeof(SECURITY_ATTRIBUTES); 
      sa.bInheritHandle=true; 
      sa.lpSecurityDescriptor=NULL; 
      HANDLE ReadPipeHandle; 
      HANDLE WritePipeHandle;       // not used here
      if(!CreatePipe(&ReadPipeHandle,&WritePipeHandle,&sa,0)) 
    		RaiseLastWin32Error();
    
      //Create a Console 
      STARTUPINFO si; 
      ZeroMemory(&si,sizeof(STARTUPINFO)); 
      si.cb=sizeof(STARTUPINFO); 
      si.dwFlags=STARTF_USESHOWWINDOW|STARTF_USESTDHANDLES;
      si.wShowWindow=SW_HIDE; 
      si.hStdOutput=WritePipeHandle; 
      si.hStdError=WritePipeHandle;
    
      PROCESS_INFORMATION pi;
      ZeroMemory(&pi,sizeof(PROCESS_INFORMATION));
      if(!CreateProcess(".\\s2a\\Python\\python.exe", ".\\s2a\\s2a.py COM13", NULL, NULL, false, 0, NULL, NULL, &si,&pi))
    	  RaiseLastWin32Error();
    
      //Read from pipe 
      char Data[1024]; 
      for (;;)
      {
        DWORD BytesRead; 
        DWORD TotalBytes; 
        DWORD BytesLeft; 
    
    	//Check for the presence of data in the pipe
        if(!PeekNamedPipe(ReadPipeHandle,Data,sizeof(Data),&BytesRead, 
            &TotalBytes,&BytesLeft))RaiseLastWin32Error(); 
        //If there is bytes, read them 
        if(BytesRead) 
        { 
          if(!ReadFile(ReadPipeHandle,Data,sizeof(Data)-1,&BytesRead,NULL)) 
              RaiseLastWin32Error(); 
          Data[BytesRead]='\0'; 
          Memo1->Lines->Add(AnsiString(Data)); 
    
        } 
        else 
        { 
          //Is the console app terminated? 
          if(WaitForSingleObject(pi.hProcess,0)==WAIT_OBJECT_0)break; 
    
        } 
      } 
      CloseHandle(pi.hThread);
      CloseHandle(pi.hProcess); 
      CloseHandle(ReadPipeHandle); 
      CloseHandle(WritePipeHandle);
    Merci mille fois de prendre le temps de me relire.

  7. #7
    Membre Expert
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activit� : Responsable de compte
    Secteur : High Tech - Op�rateur de t�l�communications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Billets dans le blog
    1
    Par d�faut
    Salut
    Que est le code de retour de CreateProcess.
    autre question pour quoi utilise tu un "." dans ton appel
    je ne vois pas la n�cessit� de le faire
    cdlt
    vous trouverez mes tutoriels � l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les r�gles du forum

  8. #8
    Membre averti
    Inscrit en
    Mai 2012
    Messages
    32
    D�tails du profil
    Informations forums :
    Inscription : Mai 2012
    Messages : 32
    Par d�faut
    Merci de ta r�ponse.
    Le "." est un reste de commande batch pour sp�cifier que la racine est le r�pertoire courant. Pareillement utile pour un ShellExecute.
    J'obtiens un "Erreur code 3. Le chemin d'acc�s sp�cifi� est introuvable".

  9. #9
    Membre Expert
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activit� : Responsable de compte
    Secteur : High Tech - Op�rateur de t�l�communications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Billets dans le blog
    1
    Par d�faut
    Salut
    je pense que l'erreur provient de ce"."
    fait un essai sans cela devrait fonctionner
    c'est sous linux que le "." est important pas sous l'environnement windows
    cdlt
    vous trouverez mes tutoriels � l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les r�gles du forum

  10. #10
    Membre averti
    Inscrit en
    Mai 2012
    Messages
    32
    D�tails du profil
    Informations forums :
    Inscription : Mai 2012
    Messages : 32
    Par d�faut
    Ben non, n�cessaire aussi pour Windows. Sinon j'ai aussi essay� une modif de ton code pour l'ins�rer dans un �v�nement du bouton :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    void __fastcall TInterfaceS2A::Button1Click(TObject *Sender)
    {
      unsigned long ProcessResult;
      STARTUPINFO si;
      PROCESS_INFORMATION  pi;
      ZeroMemory(&si,sizeof(si));
      si.cb=sizeof(si);
      bool result=CreateProcess("F:\\ZZZzzz\\s2a\\Python\\python.exe", "F:\\ZZZzzz\\s2a\\s2a.py COM13",
    							NULL,
    							NULL,
    							false,
    							DETACHED_PROCESS,
    							NULL,
    							NULL,
    							&si,
    							&pi);
       while (ProcessResult==STILL_ACTIVE)
       {
    	Sleep(50);
        Application->ProcessMessages();
        GetExitCodeProcess(pi.hProcess,
    					   &ProcessResult);
       }
     
       CloseHandle(pi.hThread);
       CloseHandle(pi.hProcess);
    }
    Mais l� il ne se passe rien....
    Merci de ton aide.

  11. #11
    Membre Expert
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activit� : Responsable de compte
    Secteur : High Tech - Op�rateur de t�l�communications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Billets dans le blog
    1
    Par d�faut
    Salut
    ton code modifi� est faux
    tu dois coder de la mani�re suivante

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
     
    bool __fastcall TInterfaceS2A::CreateAndWaitUntilTerminated(char * PrgName, char* ParamList, long* Errorcode)
    {
      unsigned longProcessResult;
      STARTUPINFO si;
      PROCESS_INFORMATION  pi;
      ZeroMemory(&si,sizeof(si));
      si.cb=sizeof(si);
      bool result=CreateProcess(PrgName,
                                ParamList,
                                NULL,
                                NULL,
                                false,
                                DETACHED_PROCESS,
                                NULL,
                                NULL,
                                &si,
                                &pi);
     if(!result)
      {
        *Errorcode=GetLastError();
        return false;
      }
      do
       {
        Sleep(50);
        Application->ProcessMessages();
        GetExitCodeProcess(pi.hProcess,
                           &ProcessResult);
       }
       while (ProcessResult==STILL_ACTIVE);
       CloseHandle(pi.hThread);
       CloseHandle(pi.hProcess);
       *Errorcode=ProcessResult;
       return true;
     
     
            //TODO: Add your source code here
    }
     
     
    void __fastcall TInterfaceS2A::Button1Click(TObject *Sender)
    {
    long ErrocCode=0;
    bool Resultat=false;
    Resultat=CreateAndWaitUntilTerminated("F:\\ZZZzzz\\s2a\\Python\\python.exe", "F:\\ZZZzzz\\s2a\\s2a.py COM13",&ErrocCode);
     
    Edit1->Text=IntToStr(ErrocCode);// pour tester le code d'erreur // A Ajouter dans ta form
     
     
    }
    cdlt
    vous trouverez mes tutoriels � l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les r�gles du forum

  12. #12
    Membre Expert
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activit� : Responsable de compte
    Secteur : High Tech - Op�rateur de t�l�communications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Billets dans le blog
    1
    Par d�faut
    Salut
    j'ai trouv� le probl�me et il suffit de param�trer diff�remment CreateProcess pour utiliser l'appel d'une application avec des param�tres
    ci-dessous un exemple
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
     
    {
      	SECURITY_ATTRIBUTES sa;
    	ZeroMemory(&sa, sizeof(SECURITY_ATTRIBUTES));
    	sa.nLength = sizeof(SECURITY_ATTRIBUTES);
    	sa.bInheritHandle = true;
    	sa.lpSecurityDescriptor = NULL;
    	HANDLE ReadPipeHandle;
    	HANDLE WritePipeHandle; // not used here
    	if (!CreatePipe(&ReadPipeHandle, &WritePipeHandle, &sa, 0))
    		RaiseLastOSError();
     
    	// Create a Console
    	STARTUPINFO si;
    	ZeroMemory(&si, sizeof(STARTUPINFO));
    	si.cb = sizeof(STARTUPINFO);
    	si.dwFlags = STARTF_USESHOWWINDOW | STARTF_USESTDHANDLES;
    	si.wShowWindow = SW_HIDE;
    	si.hStdOutput = WritePipeHandle;
    	si.hStdError = WritePipeHandle;
     
    	PROCESS_INFORMATION pi;
    	ZeroMemory(&pi, sizeof(PROCESS_INFORMATION));
    	if (!CreateProcess(NULL,
    			"H:\\Python34\\python.exe H:\\Python34\\Tools\\Scripts\\diff.py",
    			NULL, NULL, true, 0, NULL, NULL, &si, &pi))
    		RaiseLastOSError();
     
    	// Read from pipe
    	char Data[1024];
    	for (; ; ) {
    		DWORD BytesRead;
    		DWORD TotalBytes;
    		DWORD BytesLeft;
     
    		// Check for the presence of data in the pipe
    		if (!PeekNamedPipe(ReadPipeHandle, Data, sizeof(Data), &BytesRead,
    				&TotalBytes, &BytesLeft))
    			RaiseLastOSError();
    		// If there is bytes, read them
    		if (BytesRead) {
    			if (!ReadFile(ReadPipeHandle, Data, sizeof(Data) - 1, &BytesRead,
    					NULL))
    				RaiseLastOSError();
    			Data[BytesRead] = '\0';
    			Memo1->Lines->Add(AnsiString(Data));
     
    		}
    		else {
    			// Is the console app terminated?
    			if (WaitForSingleObject(pi.hProcess, 0) == WAIT_OBJECT_0)
    				break;
     
    		}
    	}
    	CloseHandle(pi.hThread);
    	CloseHandle(pi.hProcess);
    	CloseHandle(ReadPipeHandle);
    	CloseHandle(WritePipeHandle);
    }
    cdlt
    vous trouverez mes tutoriels � l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les r�gles du forum

  13. #13
    Membre averti
    Inscrit en
    Mai 2012
    Messages
    32
    D�tails du profil
    Informations forums :
    Inscription : Mai 2012
    Messages : 32
    Par d�faut
    Citation Envoy� par DjmSoftware Voir le message
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
    bool __fastcall TInterfaceS2A::CreateAndWaitUntilTerminated(char * PrgName, char* ParamList, long* Errorcode)
    {
      unsigned longProcessResult;
      STARTUPINFO si;
      PROCESS_INFORMATION  pi;
      ZeroMemory(&si,sizeof(si));
      si.cb=sizeof(si);
      bool result=CreateProcess(PrgName,
                                ParamList,
                                NULL,
                                NULL,
                                false,
                                DETACHED_PROCESS,
                                NULL,
                                NULL,
                                &si,
                                &pi);
     if(!result)
      {
        *Errorcode=GetLastError();
        return false;
      }
      do
       {
        Sleep(50);
        Application->ProcessMessages();
        GetExitCodeProcess(pi.hProcess,
                           &ProcessResult);
       }
       while (ProcessResult==STILL_ACTIVE);
       CloseHandle(pi.hThread);
       CloseHandle(pi.hProcess);
       *Errorcode=ProcessResult;
       return true;
     
     
            //TODO: Add your source code here
    }
     
     
    void __fastcall TInterfaceS2A::Button1Click(TObject *Sender)
    {
    long ErrocCode=0;
    bool Resultat=false;
    Resultat=CreateAndWaitUntilTerminated("F:\\ZZZzzz\\s2a\\Python\\python.exe", "F:\\ZZZzzz\\s2a\\s2a.py COM13",&ErrocCode);
     
    Edit1->Text=IntToStr(ErrocCode);// pour tester le code d'erreur // A Ajouter dans ta form
    }
    J'ai donc utilis� ce code l� mais il ne se passe rien, et j'ai un code d'erreur 2. Une id�e de ce que �a peut etre ?

    Entre tes 2 posts, l'appel � CreateProcess n'est pas le m�me, lequel garder ? Je ne ma�trise pas du tout cette fonction...

    La m�thode trouv�e ici (http://cpp.developpez.com/faq/vc?pag...onsole-Windows) n'est pas la m�me du tout...voire m�me sinon j'utilise un ShellExecute que je log et dont j'affiche le log dans mon Memo ?

    Merci de me d�panner.

  14. #14
    Membre Expert
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activit� : Responsable de compte
    Secteur : High Tech - Op�rateur de t�l�communications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Billets dans le blog
    1
    Par d�faut
    Salut
    Utilis� le dernier code que j'ai post� je l'ai test� avec le script que j'appelle avec create process et le r�sultat est correctement affiche dans un.composant Tmemo
    Cdlt
    vous trouverez mes tutoriels � l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les r�gles du forum

  15. #15
    Membre averti
    Inscrit en
    Mai 2012
    Messages
    32
    D�tails du profil
    Informations forums :
    Inscription : Mai 2012
    Messages : 32
    Par d�faut
    Merci beaucoup ! Du coup l� j'arrive � lire les logs d'erreur
    J'obtiens :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Traceback (most recent call last):
      File "K:\s2a\s2a\s2a.py", line 31, in <module>
        from scratch_command_handlers import ScratchCommandHandlers
      File "K:\s2a\s2a\scratch_command_handlers.py", line 32, in <module>
        class ScratchCommandHandlers:
      File "K:\s2a\s2a\scratch_command_handlers.py", line 45, in ScratchCommandHandlers
        ln_languages = config.get('translation_lists', 'ln_languages').split(',')
      File "K:\s2a\s2a\Python\lib\ConfigParser.py", line 607, in get
        raise NoSectionError(section)
    ConfigParser.NoSectionError: No section: 'translation_lists'
    Ca doit venir de mon script Python ?

  16. #16
    Membre averti
    Inscrit en
    Mai 2012
    Messages
    32
    D�tails du profil
    Informations forums :
    Inscription : Mai 2012
    Messages : 32
    Par d�faut
    Merci !
    J'ai avanc�, merci car ton exemple fonctionne avec diff�rents appels � des ex�cutables. Maintenant j'essaie de mettre �a dans un thread � part....et encore une fois je gal�re....
    Par contre pour le python, impossible de le faire rentrer l� dedans !

    Zou j'y retourne.

Discussions similaires

  1. [Langage/Algorithme] R�cup�rer le retour d'une commande MS-DOS dans une variable sous C++ Builder XE2
    Par Mercusyo dans le forum C++Builder
    R�ponses: 7
    Dernier message: 21/03/2012, 09h41
  2. [D�butant] Borland C++ Builder : Port�e du this, fonctions dans un formulaire, et espions
    Par otacon ghost dans le forum C++Builder
    R�ponses: 3
    Dernier message: 20/07/2011, 15h32
  3. [IDE] Manipulation de Date dans MysQl avec Borland C++ Builder 6
    Par KONAMIM dans le forum C++Builder
    R�ponses: 3
    Dernier message: 08/03/2011, 21h20
  4. R�ponses: 5
    Dernier message: 28/02/2006, 15h12
  5. Installer Synedit dans Borland C++ builder
    Par oliviereims dans le forum C++Builder
    R�ponses: 19
    Dernier message: 24/02/2005, 19h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo