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

Visual C++ Discussion :

Projet Gestio d'Arrachage de BEtterave avec DGPS et PDA


Sujet :

Visual C++

  1. #1
    Membre �clair�
    Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2007
    Messages
    246
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 246
    Par d�faut Projet Gestio d'Arrachage de BEtterave avec DGPS et PDA
    Bonjour a tous.

    Je suis nouveau ici mais je programme depuis 4ans.
    J'ai d�but� sur DEV C++ pour poursuivre dans le cadre de mon BTS IRIS sur Borland C++.

    Apr�s cette br�ve pr�sentation je vous explique le projet officiel de mon BTS.

    Je dois acqu�rir des trames venant d'un DGPS pour les traiter sur un PDA enregistrer le d�but d'arrachage, les temps de pause du conducteur, ainsi que la fin sur un fichier XML.

    Le compilateur utilis� c'est visual studio 2005 avec le langage C++ uniquement (obligaoire dans le cadre du BTS). Ce compilateur est tout nouveau pour moi et j'ai des questions d'abord simplistes puis un peu plus compliqu�sur mon projet .
    Je vous remercie � l'avance de m'aider car je suis un peu paniqu� pour ma note de projet. Je n'ai que 12 semaines pour r�aliser mon projet et comprendre les subtilit�s de visual studio 2005.

    Ma classe qui g�re la liaison s�rie en bluetooth. Elle sert � acqu�rir les trames sur le PDA.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    class cl_Bluetooth
    {private: 
    HANDLE hcomm;
    DCB serie;
    OVERLAPPED over;
    public:
    cl_Bluetooth(char *Port,int Brate);
    char* lecture (void);
    void modifPARAM (char *Port,int Brate);
    ~cl_Bluetooth(void);
    };
    1�) Comment fait-on pour transformer un String en char* sur visual studio 2005 ?

    2�) la fonction hcomm=CreateFile(Port,GENERIC_READ,0,NULL,OPEN_EXISTING,FILE_FLAG_OVERLAPPED,NULL);
    if(hcomm==INVALID_HANDLE_VALUE)
    ne passe pas � la compilation du fait que Port est un char* alors qu'il me demande un LPCWSTR comment faire pour convertir les char* ainsi que les String en LPCWSTR sachant que Port est un char* envoy� en param�tre dans la m�thode modifPARAM qui utilise cette fonction?


    D�finition de la m�thode modifPARAM

    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
    void cl_Bluetooth::modifPARAM (char *port,int vitesse)
    /* Modification des paramètres du port série */
    {
     bool test;
     hcomm=CreateFile(TEXT("COM1"),GENERIC_READ,0,NULL,OPEN_EXISTING,FILE_FLAG_OVERLAPPED,NULL);
     if(hcomm==INVALID_HANDLE_VALUE)
      {MessageBox(NULL,TEXT("Impossible d'ouvrire le port choisi"),TEXT("Erreur #001"),MB_ICONSTOP);
      }
     GetCommState (hcomm,serie);
     serie->BaudRate=vitesse;
     serie->ByteSize=8;
     serie->Parity=EVENPARITY;
     serie->StopBits=ONESTOPBIT;
     test=SetCommState (hcomm,serie);
     PurgeComm (hcomm,PURGE_RXCLEAR);
     if (test==false)
       {MessageBox(NULL,TEXT("Impossible d'ouvrire le port choisi"),TEXT("Erreur #002"),MB_ICONSTOP);
       }
    }
    voila pour le d�but, je vous l'avait dit c simple pour les connaisseur de la suite visual studio mais pour moi qui n'a connu que Borland et DEV cpp, je trouve que visual studio c'est une usin a gaz. A noter que cette discussion se trouve aussi dans le forum C/C++.

  2. #2
    R�dacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par d�faut
    pour convertir char en LPCWSTR , il faut utiliser multiByteToWideChar, il doit y avoir un exemple dans la faq

    et quand tu parles de string ? ce sont les string de la STL ? quel type d'application fais-tu ? Win32 console ?

    (ps : utilise plutot les balises codes)

  3. #3
    Membre �clair�
    Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2007
    Messages
    246
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 246
    Par d�faut reponse 1
    Merci de ta reponse.
    J'utilise les System::String^

  4. #4
    Membre �clair�
    Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2007
    Messages
    246
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 246
    Par d�faut PS reponse 1
    Je ne trouve pas la fonction multiByteToWideChar dans visual studio 2005.
    Je pr�cise aussi que c'est une application windows form � laquelle j'ai ajout� une classe.

  5. #5
    R�dacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par d�faut
    ok, dans ce cas, je t'invite � consulter la faq C++/CLI au chapitre conversion http://dotnet.developpez.com/faq/cpp...age=conversion

  6. #6
    Membre �clair�
    Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2007
    Messages
    246
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 246
    Par d�faut Ca marche !!!
    Merci pour cette pr�cieuse aide ca marche!!!
    Je viens d'avoir un autre probl�me.

    Dans mon Form.h il ne reconnais pas mon objet instanci� de la classe cl_Bluetooth.

    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
    public ref class Form1 : public System::Windows::Forms::Form
    	{
    	public:
    		cl_Bluetooth *obj();
    		Form1(void)
    		{
    			InitializeComponent(); 
                                               ...
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) 
    			 /* Bouton Valider des param�tres de la liason*/
    	{obj=gcnew cl_Bluetooth ("COM1",9600);
    	 char *Pserie;
    	 int speed;
    	 speed=Convert::ToInt32(comboBox2->Text);
    	 Pserie=static_cast<char *>(System::Runtime::InteropServices::Marshal::StringToHGlobalAnsi(comboBox1->Text).ToPointer());
    	 obj.modifPARAM(Pserie,speed);
    };

  7. #7
    R�dacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par d�faut
    quelle est l'erreur ?

  8. #8
    Membre �clair�
    Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2007
    Messages
    246
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 246
    Par d�faut Question
    Je n'ai plus de probl�me de d�claration d'objet, mais j'ai des erreurs comme

    cl_Bluetooth.obj : error LNK2028: jeton non r�solu (0A00000D) "extern "C" int __stdcall MessageBoxW(struct HWND__ *,wchar_t const *,wchar_t const *,unsigned int)" (?MessageBoxW@@$$J216YGHPAUHWND__@@PB_W1I@Z) r�f�renc� dans la fonction "extern "C" int __clrcall MessageBox(struct HWND__ *,wchar_t const *,wchar_t const *,unsigned int)" (?MessageBox@@$$J0YMHPAUHWND__@@PB_W1I@Z)


    cl_Bluetooth.obj : error LNK2019: symbole externe non r�solu "extern "C" int __stdcall MessageBoxW(struct HWND__ *,wchar_t const *,wchar_t const *,unsigned int)" (?MessageBoxW@@$$J216YGHPAUHWND__@@PB_W1I@Z) r�f�renc� dans la fonction "extern "C" int __clrcall MessageBox(struct HWND__ *,wchar_t const *,wchar_t const *,unsigned int)" (?MessageBox@@$$J0YMHPAUHWND__@@PB_W1I@Z)


    C:\Documents and Settings\mbignon\Mes documents\projet\module de test3\test_serie\Debug\test_serie.exe : fatal error LNK1120: 2 externes non r�solus

    Dans le dossier Debug, le fichier de projet .exe n'y est pas, comment faire pour qu'il en cr�er un nouveau. Merci

  9. #9
    R�dacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par d�faut
    ben il faut r�soudre les erreurs de links

    Je te sugg�re plutot d'utiliser le messagebox de .Net, � savoir :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    MessageBox::Show("....");

  10. #10
    Membre �clair�
    Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2007
    Messages
    246
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 246
    Par d�faut Je montre tout
    Je vais faire un petit point la 1�re partie du projet est presque termin� il me reste les 3 erreurs pr�c�demment montr�es.
    Donc pour m'aider � les r�soudre je vais montrer tout mon code source.

    cl_Bluetooth.h
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    ref class cl_Bluetooth
    {
    private:  
       static HANDLE hcomm;
       static LPDCB serie;
       static LPOVERLAPPED over;
    public:
    	cl_Bluetooth(char *Port,int Brate);
    	char* Lecture (void);
        void modifPARAM (char *Port,int Brate);
    	~cl_Bluetooth(void);
    };
    cl_Bluetooth.cpp
    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
    #include "stdafx.h"
    #include <windows.h>
    #include "vcclr.h"
    #include <stdlib.h>
    #include <string.h>
    #include "cl_Bluetooth.h"
     
    cl_Bluetooth::cl_Bluetooth(char *Port,int vitesse)
    /* Le constructeur reçoit le port et la vitesse de transfert en paramètre */
    {
     modifPARAM (Port,vitesse);
    }
    //---------------------------------------------------------------------------
    char* cl_Bluetooth::Lecture ()
    /* Lecture des données sur le port */
    {unsigned long pt;
     char* chaine;
     chaine=new char (83);
     ReadFile(hcomm,chaine,82,&pt,over); //lecture du port série
     PurgeComm (hcomm,PURGE_RXCLEAR); // vide le buffer du port
     return chaine; //on retourne la trame NMEA
    }
    //---------------------------------------------------------------------------
    void cl_Bluetooth::modifPARAM (char *Port,int vitesse)
              /* Modification des paramètres du port série */
    {LPWSTR wch;
      bool test;
     WideCharToMultiByte(CP_ACP, 0, wch, 3, Port, 3, NULL, NULL); //conversion de *Port en LPWSTR
     hcomm=CreateFile(wch,GENERIC_READ,0,NULL,OPEN_EXISTING,FILE_FLAG_OVERLAPPED,NULL); //ouvertur du port sélectionné
     if(hcomm==INVALID_HANDLE_VALUE) 
     {System::Windows::Forms::MessageBox::Show(NULL,TEXT("Impossible d'ouvrir le port sélectionné"),TEXT("Erreur #001"),MB_ICONSTOP);
      }
     GetCommState (hcomm,serie); //lecture des paramètre de configuration du port
     serie->BaudRate=vitesse; //début configuration
     serie->ByteSize=8;
     serie->Parity=EVENPARITY;
     serie->StopBits=ONESTOPBIT;
     test=SetCommState (hcomm,serie); //fin de la configuration
     PurgeComm (hcomm,PURGE_RXCLEAR);  //vider le buffer
     if (test==false)
     {MessageBox::Show(NULL,TEXT("Impossible d'ouvrire le port choisi"),TEXT("Erreur #002"),MB_ICONSTOP);
       }
    } 
    //---------------------------------------------------------------------------
    cl_Bluetooth::~cl_Bluetooth ()
                    /* Destructeur */
    {bool test;
     test=PurgeComm (hcomm,PURGE_RXCLEAR);
     if (test==true)
       {test=CloseHandle (hcomm); //fermeture du port
       }
     else
     {MessageBox::Show(NULL,TEXT("Impossible de vider le port com"),TEXT("Erreur #003"),MB_ICONSTOP);
       }
    }
    Form1.h
    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
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    #pragma once
    #include "StdAfx.h"
    #include <windows.h>
    #include <vcclr.h>
    #include <stdlib.h>
    #include <string.h>
     
    #include "cl_Bluetooth.h"
    namespace test_serie {
     
    	using namespace System;
    	using namespace System::ComponentModel;
    	using namespace System::Collections;
    	using namespace System::Windows::Forms;
    	using namespace System::Data;
    	using namespace System::Drawing;
     
    	/// <summary>
    	/// Description résumée de Form1
    	///
    	/// AVERTISSEMENT*: si vous modifiez le nom de cette classe, vous devrez modifier la
    	///          propriété 'Nom du fichier de ressources' de l'outil de compilation de ressource managée
    	///          pour tous les fichiers .resx dont dépend cette classe. Dans le cas contraire,
    	///          les concepteurs ne pourront pas interagir correctement avec les ressources
    	///          localisées associées à ce formulaire.
    	/// </summary>
    	public ref class Form1 : public System::Windows::Forms::Form
    	{
    	public:
    		Form1(void)
    		{
    			InitializeComponent();	
    			//
    			//TODO*: ajoutez ici le code du constructeur
    			//
    		}
     
    	protected:
    		/// <summary>
    		/// Nettoyage des ressources utilisées.
    		/// </summary>
    		~Form1()
    		{
    			if (components)
    			{
    				delete components;
    			}
    		}
    	private: System::Windows::Forms::ComboBox^  comboBox1;
    	protected: 
    	private: System::Windows::Forms::ComboBox^  comboBox2;
    	private: System::Windows::Forms::Button^  button1;
    	private: System::Windows::Forms::GroupBox^  groupBox1;
    	private: System::Windows::Forms::TextBox^  textBox1;
    	private: System::Windows::Forms::Label^  label1;
    	private: System::Windows::Forms::Button^  button2;
    	private: System::Windows::Forms::GroupBox^  groupBox2;
     
    	private:
    		cl_Bluetooth ^obj;
    	private: System::Windows::Forms::MenuStrip^  menuStrip1;
    	private: System::Windows::Forms::ToolStripMenuItem^  fichierToolStripMenuItem;
    	private: System::Windows::Forms::ToolStripMenuItem^  quitterToolStripMenuItem;
    			 /// <summary>
    		/// Variable nécessaire au concepteur.
    		/// </summary>
    		System::ComponentModel::Container ^components;
     
    #pragma region Windows Form Designer generated code
    		/// <summary>
    		/// Méthode requise pour la prise en charge du concepteur - ne modifiez pas
    		/// le contenu de cette méthode avec l'éditeur de code.
    		/// </summary>
    		void InitializeComponent(void)
    		{
    			this->comboBox1 = (gcnew System::Windows::Forms::ComboBox());
    			this->comboBox2 = (gcnew System::Windows::Forms::ComboBox());
    			this->button1 = (gcnew System::Windows::Forms::Button());
    			this->groupBox1 = (gcnew System::Windows::Forms::GroupBox());
    			this->textBox1 = (gcnew System::Windows::Forms::TextBox());
    			this->label1 = (gcnew System::Windows::Forms::Label());
    			this->button2 = (gcnew System::Windows::Forms::Button());
    			this->groupBox2 = (gcnew System::Windows::Forms::GroupBox());
    			this->menuStrip1 = (gcnew System::Windows::Forms::MenuStrip());
    			this->fichierToolStripMenuItem = (gcnew System::Windows::Forms::ToolStripMenuItem());
    			this->quitterToolStripMenuItem = (gcnew System::Windows::Forms::ToolStripMenuItem());
    			this->groupBox1->SuspendLayout();
    			this->groupBox2->SuspendLayout();
    			this->menuStrip1->SuspendLayout();
    			this->SuspendLayout();
    			// 
    			// comboBox1
    			// 
    			this->comboBox1->Font = (gcnew System::Drawing::Font(L"Lucida Console", 8.25F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, 
    				static_cast<System::Byte>(0)));
    			this->comboBox1->FormattingEnabled = true;
    			this->comboBox1->Items->AddRange(gcnew cli::array< System::Object^  >(8) {L"COM1", L"COM2", L"COM3", L"COM4", L"COM5", L"COM6", 
    				L"COM7", L"COM8"});
    			this->comboBox1->Location = System::Drawing::Point(4, 24);
    			this->comboBox1->Name = L"comboBox1";
    			this->comboBox1->Size = System::Drawing::Size(70, 19);
    			this->comboBox1->TabIndex = 0;
    			this->comboBox1->Text = L"COM1";
    			// 
    			// comboBox2
    			// 
    			this->comboBox2->FormattingEnabled = true;
    			this->comboBox2->Items->AddRange(gcnew cli::array< System::Object^  >(3) {L"4800", L"9600", L"19200"});
    			this->comboBox2->Location = System::Drawing::Point(218, 24);
    			this->comboBox2->Name = L"comboBox2";
    			this->comboBox2->Size = System::Drawing::Size(61, 21);
    			this->comboBox2->TabIndex = 1;
    			this->comboBox2->Text = L"4800";
    			// 
    			// button1
    			// 
    			this->button1->Font = (gcnew System::Drawing::Font(L"Palatino Linotype", 8.25F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, 
    				static_cast<System::Byte>(0)));
    			this->button1->Location = System::Drawing::Point(107, 65);
    			this->button1->Name = L"button1";
    			this->button1->Size = System::Drawing::Size(83, 26);
    			this->button1->TabIndex = 2;
    			this->button1->Text = L"Valider";
    			this->button1->UseVisualStyleBackColor = true;
    			this->button1->Click += gcnew System::EventHandler(this, &Form1::button1_Click);
    			// 
    			// groupBox1
    			// 
    			this->groupBox1->Controls->Add(this->button1);
    			this->groupBox1->Controls->Add(this->comboBox2);
    			this->groupBox1->Controls->Add(this->comboBox1);
    			this->groupBox1->Location = System::Drawing::Point(3, 152);
    			this->groupBox1->Name = L"groupBox1";
    			this->groupBox1->Size = System::Drawing::Size(285, 109);
    			this->groupBox1->TabIndex = 3;
    			this->groupBox1->TabStop = false;
    			this->groupBox1->Text = L"Paramètrage";
    			// 
    			// textBox1
    			// 
    			this->textBox1->Location = System::Drawing::Point(8, 37);
    			this->textBox1->Name = L"textBox1";
    			this->textBox1->Size = System::Drawing::Size(269, 20);
    			this->textBox1->TabIndex = 4;
    			// 
    			// label1
    			// 
    			this->label1->AutoSize = true;
    			this->label1->Font = (gcnew System::Drawing::Font(L"Trebuchet MS", 9.75F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, 
    				static_cast<System::Byte>(0)));
    			this->label1->ForeColor = System::Drawing::Color::Red;
    			this->label1->Location = System::Drawing::Point(71, 16);
    			this->label1->Name = L"label1";
    			this->label1->Size = System::Drawing::Size(131, 18);
    			this->label1->TabIndex = 5;
    			this->label1->Text = L"Trame lue sur le port";
    			// 
    			// button2
    			// 
    			this->button2->Location = System::Drawing::Point(107, 79);
    			this->button2->Name = L"button2";
    			this->button2->Size = System::Drawing::Size(82, 28);
    			this->button2->TabIndex = 6;
    			this->button2->Text = L"Lecture";
    			this->button2->UseVisualStyleBackColor = true;
    			this->button2->Click += gcnew System::EventHandler(this, &Form1::button2_Click);
    			// 
    			// groupBox2
    			// 
    			this->groupBox2->Controls->Add(this->button2);
    			this->groupBox2->Controls->Add(this->label1);
    			this->groupBox2->Controls->Add(this->textBox1);
    			this->groupBox2->Location = System::Drawing::Point(3, 27);
    			this->groupBox2->Name = L"groupBox2";
    			this->groupBox2->Size = System::Drawing::Size(284, 125);
    			this->groupBox2->TabIndex = 7;
    			this->groupBox2->TabStop = false;
    			this->groupBox2->Text = L"Lecture tour par tour";
    			// 
    			// menuStrip1
    			// 
    			this->menuStrip1->Items->AddRange(gcnew cli::array< System::Windows::Forms::ToolStripItem^  >(1) {this->fichierToolStripMenuItem});
    			this->menuStrip1->Location = System::Drawing::Point(0, 0);
    			this->menuStrip1->Name = L"menuStrip1";
    			this->menuStrip1->Size = System::Drawing::Size(292, 24);
    			this->menuStrip1->TabIndex = 8;
    			this->menuStrip1->Text = L"menuStrip1";
    			// 
    			// fichierToolStripMenuItem
    			// 
    			this->fichierToolStripMenuItem->DropDownItems->AddRange(gcnew cli::array< System::Windows::Forms::ToolStripItem^  >(1) {this->quitterToolStripMenuItem});
    			this->fichierToolStripMenuItem->Name = L"fichierToolStripMenuItem";
    			this->fichierToolStripMenuItem->Size = System::Drawing::Size(50, 20);
    			this->fichierToolStripMenuItem->Text = L"Fichier";
    			this->fichierToolStripMenuItem->Click += gcnew System::EventHandler(this, &Form1::fichierToolStripMenuItem_Click);
    			// 
    			// quitterToolStripMenuItem
    			// 
    			this->quitterToolStripMenuItem->Name = L"quitterToolStripMenuItem";
    			this->quitterToolStripMenuItem->Size = System::Drawing::Size(152, 22);
    			this->quitterToolStripMenuItem->Text = L"Quitter";
    			this->quitterToolStripMenuItem->Click += gcnew System::EventHandler(this, &Form1::quitterToolStripMenuItem_Click);
    			// 
    			// Form1
    			// 
    			this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
    			this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
    			this->ClientSize = System::Drawing::Size(292, 266);
    			this->Controls->Add(this->groupBox2);
    			this->Controls->Add(this->groupBox1);
    			this->Controls->Add(this->menuStrip1);
    			this->Name = L"Form1";
    			this->Text = L"Liaison serie";
    			this->Load += gcnew System::EventHandler(this, &Form1::Form1_Load);
    			this->groupBox1->ResumeLayout(false);
    			this->groupBox2->ResumeLayout(false);
    			this->groupBox2->PerformLayout();
    			this->menuStrip1->ResumeLayout(false);
    			this->menuStrip1->PerformLayout();
    			this->ResumeLayout(false);
    			this->PerformLayout();
     
    		}
    #pragma endregion
    	private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) 
    			 /* Bouton Valider des paramètres de la liason*/
    	{obj=gcnew cl_Bluetooth ("COM1",9600);
    	 char *Pserie;
    	 int speed;
    	 speed=Convert::ToInt32(comboBox2->Text);
    	             /* Conversion d'un String^ en char* */
    	 Pserie=static_cast<char *>(System::Runtime::InteropServices::Marshal::StringToHGlobalAnsi(comboBox1->Text).ToPointer());
    	 obj->modifPARAM(Pserie,speed); //on passe la configuration choisie pour valider le port série et sa vitesse de transfert
    	 delete (Pserie);
    };
    //------------------------------------------------------------------------------------------
    private: System::Void button2_Click(System::Object^  sender, System::EventArgs^  e)
    			 /* Bouton pour lire les trames sur le port série*/
    		 {
    		  textBox1->Text=Convert::ToString(obj->Lecture()); //affichage de la trame lue dans le textBox
    		 }
    //------------------------------------------------------------------------------------------
    private: System::Void Form1_Load(System::Object^  sender, System::EventArgs^  e) {
    		 }
    private: System::Void quitterToolStripMenuItem_Click(System::Object^  sender, System::EventArgs^  e) 
    		 {Close();
    		 }
    //------------------------------------------------------------------------------------------
    private: System::Void fichierToolStripMenuItem_Click(System::Object^  sender, System::EventArgs^  e) {
    		 }
    }
    Voil� pour ce que j'ai r�alis� pour le moment gr�ce � votre aide. J'esp�re que quelqu'un pourra m'aider � trouver la solution � mon dernier probl�me. D�sol�e pour tout le code que j'ai affich� c'est un peu bourrin mais je vois pas du tout l'erreur.
    Je vous rapelle les erreurs que VS2005 m'affiche:

    cl_Bluetooth.obj : error LNK2028: jeton non r�solu (0A00000D) "extern "C" int __stdcall MessageBoxW(struct HWND__ *,wchar_t const *,wchar_t const *,unsigned int)" (?MessageBoxW@@$$J216YGHPAUHWND__@@PB_W1I@Z) r�f�renc� dans la fonction "extern "C" int __clrcall MessageBox(struct HWND__ *,wchar_t const *,wchar_t const *,unsigned int)" (?MessageBox@@$$J0YMHPAUHWND__@@PB_W1I@Z)

    cl_Bluetooth.obj : error LNK2019: symbole externe non r�solu "extern "C" int __stdcall MessageBoxW(struct HWND__ *,wchar_t const *,wchar_t const *,unsigned int)" (?MessageBoxW@@$$J216YGHPAUHWND__@@PB_W1I@Z) r�f�renc� dans la fonction "extern "C" int __clrcall MessageBox(struct HWND__ *,wchar_t const *,wchar_t const *,unsigned int)" (?MessageBox@@$$J0YMHPAUHWND__@@PB_W1I@Z)

    C:\Documents and Settings\mbignon\Mes documents\projet\module de test3\test_serie\Debug\test_serie.exe : fatal error LNK1120: 2 externes non r�solus

  11. #11
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    51
    D�tails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 51
    Par d�faut
    Le linker cherche la fonction MessageBoxW (donc la version Unicode de MsgBox), il ne la trouve pas.
    Tu as surement un include manquant ou une lib manquante qui devrait �tre li�e � ton projet.

  12. #12
    R�dacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par d�faut
    essaie de d�finir WIN32_LEAN_AND_MEAN

  13. #13
    Membre �clair�
    Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2007
    Messages
    246
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 246
    Par d�faut R�ponse 2
    Bon j'avoue je suis un peu larguer l�.
    Ce que je trouve bizarre c'est que quand je mets les MessageBox en commentaire il y a encore les m�mes erreurs, pourtant il s'agit bien des messagesbox ki font ch... . Je ne comprends pas la d�finition de WIN32_LEAN_AND_MEAN et je ne vois pas quelles biblioth�ques inclure.

    Dans ce projet nous sommes 2. Je g�re tout ce qui touche au PDA et au GPS et mon coll�gue g�re le PC de gestion qui sauvegarde toutes les affaires trait�s dans une base de donn�es MySQL. Cette BDD sera ensuite exporter au format CSV. Mon coll�gue a une question, donc je vous la pose ^^.

    "Comment g�re-t-on une MySQL exception ?"
    exemple lorsqu'il ouvre la connection il veut connaitre si elle s'est bien passer.

  14. #14
    R�dacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414

  15. #15
    Membre �clair�
    Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2007
    Messages
    246
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 246
    Par d�faut Compte rendu
    La partie que j'ai r�aliser gr�ce � votre aide setrt pour la partie module de tes du projet officiel du BTS. J'ai toujours les 3 m�mes erreurs que je n'arrive pas � r�soudre malgr�s vos conseils.

    Cette partie je dois la rendre ce jour-ci avant 16 heures. Si elles ne marchent pas c'est pas grave en soit mais j'ai besoin de savoir quand m�me ^^.

    Je vous annonce la suite de mon projet.
    - Lecture d'un fichier XML pour afficher les num�ros d'affaires � traiter dans la journ�e.

    - Extraction des positions, date et heures d'une trame NMEA.

    - Calcul de d�placement, de vitesse et de dur�e de l'egin de coupe.

    - Ecriture de fichier CSV pour tra�abilit� des actions faite par le conducteur.

    Voil�, je commencerais par la partie extraction des trames. Je vous mettrais en ligne toute l'analyse UML que j'ai termin�.

  16. #16
    R�dacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par d�faut
    et bien bon courage.
    Si tu as des questions, fait en sorte quelles sont pr�cises

  17. #17
    Membre �clair�
    Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2007
    Messages
    246
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 246
    Par d�faut Analyse UML du projet
    Bonjour � tous,

    en attendant l'avancement du projet je vous propose l'analyse UML compl�te du projet.

    1�) Diagramme des cas d'utilisation

    [IMG]C:\Documents and Settings\mbignon\Bureau\projet\Analyse UML\Sans titre.bmp[/IMG]


    2�) Sc�narios

    Sc�nario � g�rer_client �

    1) L�IHM_Entrepreneur se connecte � la BDD.
    2) L�entrepreneur choisit d�ajouter un client.
    3) L�entrepreneur saisie les informations.
    4) L�objet de la classe � cl_client � envoie une requ�te � la BDD pour ajouter le client.
    5) L�IHM_Entrepreneur se d�connecte de la BDD.

    Encha�nements Alternatifs :

    A1 : L�utilisateur choisit de modifier un client.
    L�encha�nement A1 commence au point 2 du sc�nario nominal
    3) L�objet de la classe � cl_client � envoie une requ�te � la BDD pour r�cup�rer la liste des clients.
    4) L�utilisateur s�lectionne le client d�sir�.
    5) L�utilisateur modifie les informations voulues.
    6) L�objet de la classe � cl_client � envoie une requ�te � la BDD pour modifier le client.
    Le sc�nario reprend au point 4.

    A2 : L�utilisateur choisit de supprimer un client.
    L�encha�nement A2 commence au point 2 du sc�nario nominal.
    3) L�objet de la classe � cl_client � envoie une requ�te � la BDD pour r�cup�rer la liste des clients.
    4) L�utilisateur s�lectionne le client d�sir�.
    5) L�objet de la classe � cl_client � envoie une requ�te � la BDD pour supprimer le client.
    Le sc�nario reprend au point 4.


    Encha�nements d�erreurs :

    E1 : L�utilisateur n�est pas connect� � la BDD.
    L�encha�nement E1 commence au point 1 du sc�nario nominal.
    2) L�IHM_Entrepreneur affiche l�erreur.

    Sc�nario � g�rer_employe �

    1) L�IHM_Entrepreneur se connecte � la BDD.
    2) L�entrepreneur choisit d�ajouter un employ�.
    3) L�entrepreneur saisie les informations.
    4) L�objet de la classe � cl_employ� � envoie une requ�te � la BDD pour ajouter l'employ�.
    5) L�IHM_ Entrepreneur se d�connecte de la BDD.

    Encha�nements Alternatifs :

    A1 : L�utilisateur choisit de modifier un employ�.
    L�encha�nement A1 commence au point 2 du sc�nario nominal
    3) L�objet de la classe � cl_employ� � envoie une requ�te � la BDD pour r�cup�rer la liste des employ�s.
    4) L�utilisateur s�lectionne l'emplpoy� d�sir�.
    5) L�utilisateur modifie les informations voulues.
    6) L�objet de la classe � cl_employ� � envoie une requ�te � la BDD pour modifier l'employ�.
    Le sc�nario reprend au point 4.

    A2 : L�utilisateur choisit de supprimer un employ�.
    L�encha�nement A2 commence au point 2 du sc�nario nominal.
    3) L�objet de la classe � cl_employ� � envoie une requ�te � la BDD pour r�cup�rer la liste des employ�s.
    4) L�utilisateur s�lectionne l'employ� d�sir�.
    5) L�objet de la classe � cl_employ� � envoie une requ�te � la BDD pour supprimer l'employ�.
    Le sc�nario reprend au point 4.


    Encha�nements d�erreurs :

    E1 : L�utilisateur n�est pas connect� � la BDD.
    L�encha�nement E1 commence au point 1 du sc�nario nominal.
    2) L�IHM Entrepreneur affiche l�erreur.

    Sc�nario � g�rer_affaire �

    1) L�IHM_Entrepreneur se connecte � la BDD.
    2) L�entrepreneur choisit d�ajouter une affaire.
    3) L�entrepreneur saisie les informations.
    4) L�objet de la classe � cl_affaire � envoie une requ�te � la BDD pour ajouter l'affaire.
    5) L'IHM_Entrepreneur se d�connecte de la BDD.

    Encha�nements Alternatifs :

    A1 : L�utilisateur choisit de modifier une affaire.
    L�encha�nement A1 commence au point 2 du sc�nario nominal
    3) L�objet de la classe � cl_affaire � envoie une requ�te � la BDD pour r�cup�rer la liste des affaires.
    4) L�utilisateur s�lectionne l'affaire d�sir�e.
    5) L�utilisateur modifie les informations voulues.
    6) L�objet de la classe � cl_affaire � envoie une requ�te � la BDD pour modifier l'affaire.
    Le sc�nario reprend au point 4.

    A2 : L�utilisateur choisit de supprimer une affaire.
    L�encha�nement A2 commence au point 2 du sc�nario nominal.
    3) L�objet de la classe � cl_affaire � envoie une requ�te � la BDD pour r�cup�rer la liste des affaires.
    4) L�utilisateur s�lectionne l'affaire d�sir�e.
    5) L�objet de la classe � cl_affaire � envoie une requ�te � la BDD pour supprimer l'affaire.
    Le sc�nario reprend au point 4.


    Encha�nements d�erreurs :

    E1 : L�utilisateur n�est pas connect� � la BDD.
    L�encha�nement E1 commence au point 1 du sc�nario nominal.
    2) L�IHM_Entrepreneur affiche l�erreur.

    Sc�nario � exporter_facture �

    1) L�entrepreneur choisit d�exporter une facture.
    2) L�IHM_Export se connecte � la BDD.
    3) L'objet de la classe � cl_Exporter � envoie une requ�te � la BDD pour r�cup�rer la liste des affaires trait�es.
    4) L'objet de la classe � cl_Exporter � ouvre un fichier CSV.
    5) L�objet de la classe � cl_Exporter � �dite la facture.
    6) L�entrepreneur choisit d�imprimer la facture.
    7) L'objet de la classe � cl_Exporter �ferme le fichier CSV.
    8) L'IHM_Export se d�connecte de la BDD.

    Encha�nements d�erreurs :

    E1 : L�utilisateur n�est pas connect� � la BDD.
    L�encha�nement E1 commence au point 2 du sc�nario nominal.
    3) L�IHM_Export affiche l�erreur.


    Sc�nario � exporter_bulletin �


    1) L�entrepreneur choisit d�exporter un bulletin.
    2) L�IHM_Export se connecte � la BDD.
    3) L'objet de la classe � cl_Exporter � envoie une requ�te � la BDD pour r�cup�rer la liste des affaires trait�es.
    4) L'objet de la classe � cl_Exporter �ouvre un fichier CSV.
    5) L�objet de la classe � cl_Exporter � �dite le bulletin.
    6) L�entrepreneur choisit d�imprimer le bulletin.
    7) L'objet de la classe � cl_Exporter � ferme le fichier CSV.
    8) L'IHM_Export se d�connecte de la BDD.

    Encha�nements d�erreurs :

    E1 : L�utilisateur n�est pas connect� � la BDD.
    L�encha�nement E1 commence au point 2 du sc�nario nominal.
    3) L�IHM_Export affiche l�erreur.


    Sc�nario � Arracher_betteraves �


    1) L�employ� appuie sur top_d�part pour commencer l'arrachage.
    2) L'IHM_Employ� ouvre un fichier CSV dont le nom correspond au num�ro de l'affaire.
    3) L'IHM_Employ� ecrit l'heure et la date dans le fichier CSV.
    4) L'employ� appuie sur pause.
    5) L'IHM_Employ� ecrit l'heure et la surface trait�e dans le fichier.
    6) L'employ� appuie sur fin de pause.
    7) L'IHM_Employ� ecrit l'heure dans le fichier CSV.
    8) L�IHM_Employ� indique que la surface a �t� trait�e par un signal sonore et visuel donc l�employ� appuie sur top_fin.
    9) L'IHM_Employ� ecrit l'heure, la dur�e de l'arrachage, la surface trait�e et la vitesse moyenne dans le fichier CSV.
    10) L'IHM_Employ� ferme le fichier CSV.
    11) L�employ� quitte l�application.

    Encha�nements alternatifs :

    A1 : L�employ� annule l�affaire.
    L�encha�nement A1 commence au point 1 du sc�nario nominal.
    2) L�application propose la sauvegarde du traitement effectu�.
    3) L�employ� valide son choix.
    Le sc�nario reprend au point 11 du sc�nario nominal.


    Sc�nario � Param�trer �


    1) L'IHM_Employ� ouvre le fichier xml.
    2) L'IHM_Employ� lit dans le fichier xml les affaires � traiter.
    3) L'employ� selectionne l'affaire, la vitesse du port s�rie, le port, la largeur de coupe et son nom et valide ces param�tes.
    4) L'IHM_Employ� remplace dans le fichier xml, le num�ro de l'affaire par son chemin d'acc�s.
    5) L'IHM_Employ� ferme le fichier xml.

    Encha�nements alternatifs :

    A1 : Il n�a aucune affaires de charg� dans le PDA.
    L�encha�nement A1 commence au point 1 du sc�nario nominal.
    2) L�IHM_Employ� indique qu�il n�a aucune affaire dans le PDA.
    Le sc�nario reprend au point 5 du sc�nario nominal.



    Sc�nario � Transf�rer �



    1) L'IHM_Entrepreneur se connecte � la BDD.
    2) L'IHM_Entrepreneur ouvre le fichier XML.
    3) L'IHM_Entrepreneur lit dans le fichier XML pour conna�re le nombre de fichiers CSV.(nb_fichier)

    Pour i allant 1 � nb_fichier par pas de 1 faire

    4) L'IHM_Entrepreneur lit dans le fichier XML le nom du fichier de l'affaire.
    5) L'IHM_Entrepreneur ouvre le fichier CSV.
    6) L'IHM_Entrepreneur lit les informations contenus dans le fichier CSV.
    7) L'IHM_Entrepreneur envoie une requ�te � la BDD pour ajouter une affaire avec les informations provenant du fichier CSV.
    8) L'IHM_Entrepreneur ferme le fichier CSV.

    Fin pour

    9) L'IHM_Entrepreneur se d�connecte de la BDD.



    3�) Diagramme de s�quence

    [IMG]C:\Documents and Settings\mbignon\Bureau\projet\Analyse UML\Diagramme de sequence\arracher_betteraves2.bmp[/IMG]

    [IMG]C:\Documents and Settings\mbignon\Bureau\projet\Analyse UML\Diagramme de sequence\arracher_betteraves.bmp[/IMG]

    [IMG]C:\Documents and Settings\mbignon\Bureau\projet\Analyse UML\Diagramme de sequence\Diagramme de s�quence.odt[/IMG]

    [IMG]C:\Documents and Settings\mbignon\Bureau\projet\Analyse UML\Diagramme de sequence\Exporter_bulletin.bmp[/IMG]

    [IMG]C:\Documents and Settings\mbignon\Bureau\projet\Analyse UML\Diagramme de sequence\Exporter_facture.bmp[/IMG]

    [IMG]C:\Documents and Settings\mbignon\Bureau\projet\Analyse UML\Diagramme de sequence\G�rer affaire.bmp[/IMG]

    [IMG]C:\Documents and Settings\mbignon\Bureau\projet\Analyse UML\Diagramme de sequence\G�rer_BDD.bmp[/IMG]

    [IMG]C:\Documents and Settings\mbignon\Bureau\projet\Analyse UML\Diagramme de sequence\Param�trer.bmp[/IMG]

    [IMG]C:\Documents and Settings\mbignon\Bureau\projet\Analyse UML\Diagramme de sequence\Transf�rer.bmp[/IMG]

    4�) Diagrame des classes

    [IMG]C:\Documents and Settings\mbignon\Bureau\projet\Analyse UML\Diagrammes de classes\Employ�.bmp[/IMG]

    [IMG]C:\Documents and Settings\mbignon\Bureau\projet\Analyse UML\Diagrammes de classes\Entrepreneur.bmp[/IMG]


    Voila pour cette analyse r�alis� par moi-m�me et mon coll�gue. Ce post est � titre informatif et peut vous donnez des id�es. J'esp�re qu'il n'y a pas trop de fautes.

    D�sol� je viens de me rendre compte kon ne peut pas y mettre les images :s

  18. #18
    R�dacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par d�faut
    on peut mettre des images, il faut soit les mettres sur un serveur, soit les uploader � la main grace au forum

  19. #19
    Membre �clair�
    Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2007
    Messages
    246
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 246
    Par d�faut Reprise du projet !!!
    Bonjour,

    Apr�s quelques vacances bien m�rit�s, je me remet � mon projet.
    Nous allons commencer la programmation du vrai projet.
    Je m'occupe de la partie PDA et je me demande quel type de projet choisir pour avoir un formulaire pour PDA. Dois-je prendre un projet de type application windows form ?

    Merci de me r�pondre

  20. #20
    Membre �clair�
    Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2007
    Messages
    246
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 246
    Par d�faut g trouve
    Je telecharge le sdk de windows mobile 6 pour avoir un formulaire qd je cr�er un projet smart device.

    J'espere quie ce sdk est compatible avec la plupart des PDA. Celui que j'utilise est un Acer n311.

+ R�pondre � la discussion
Cette discussion est r�solue.
Page 1 sur 3 123 Derni�reDerni�re

Discussions similaires

  1. Projet ASP (et non ASP.Net) avec Visual Studio .NET 2003
    Par math1234 dans le forum Visual Studio
    R�ponses: 1
    Dernier message: 07/05/2008, 15h45
  2. Projet gestion d'arrachage de betterave avec PDA + DGPS
    Par gueulederack dans le forum Windows Forms
    R�ponses: 1
    Dernier message: 16/03/2007, 14h15
  3. Pojet Arrachage de Betterave avec GPS + PDA
    Par gueulederack dans le forum C++
    R�ponses: 4
    Dernier message: 22/02/2007, 11h51
  4. Projet jeu RPG/moteur 3D isométrique avec SDL
    Par Milan111 dans le forum Projets
    R�ponses: 4
    Dernier message: 13/04/2006, 22h01
  5. projet de base Interbase 7.5 avec images
    Par KRis dans le forum InterBase
    R�ponses: 8
    Dernier message: 13/06/2005, 10h17

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