Aller au contenu

Aide en C/C++


XyLiS

Messages recommandés

Bonjour, bonne aprem, bonsoir :)

J'aimerais faire une petite appli tte bête (souvent les plus chi*ntes à faire, surtout kan on débute la prog), j'explique :

J'aimerais faire un petit programme en C/C++, qui se connecte à une base de donnée mysql (afin de validé un login/mdp), une fois authentifié qui affiche le contenu d'un répertoire contenu sur le ftp du site où on puisse download des fichiers (en gros un client ftp...)

m'dites pas ça sert à rien bla bla... c'est pour mon frère :\

afin bref mes pb sont ceux là :

- Les seules applis graphiques que j'ai faites, je les ai faites avec Kylix sous linux, or là c'est pour windows, existe-t'il un mm soft pour windows ?

- la connexion à mysql en C/C++ je sais me débrouiller, mais pour la fonction de téléchargement de fichier.. je ne sais par quel bout commencer

Des indices, de l'aide qq chose svp... :reflechis::D

Lien vers le commentaire
Partager sur d’autres sites

- Les seules applis graphiques que j'ai faites, je les ai faites avec Kylix sous linux, or là c'est pour windows, existe-t'il un mm soft pour windows ?

Des indices, de l'aide qq chose svp... :roll::roll:

Si tu veux des compilateurs C/C++ pour Windows/Linux:

http://c.developpez.com/compilateurs/

Je te conseille Devcpp qui est gratuit

seul point négatif, l'absence d'éditeur de ressources qui facilite la création d'interface.

Enfin, il y en a un, mais c'est du style Notepad...

sinon, tu peux créer ton interface en appelant directement les objets : méthode CreateWindow...

http://www.foosyerdoos.fsnet.co.uk/

pour le reste, je n'ai pas encore les connaissances

Lien vers le commentaire
Partager sur d’autres sites

Oserais-je employé le mot "VISUAL .NET" (oui je sais ca fait 2)

Si ton but n'est pas commercial, une licence .NET ne coute pas grand chose. (50€ pour quasi toutes la suite bureautique et developpement windows: OFFICE, ACCESS, .NET, ect ect ect) Je ne fais pas de la pub et je n'ai aucune action chez ms mais si tu veux avoir facile à faire des petits écrans je pense que .NET est pas mal. Maintenant il y a peut être mieux et venant du monde linux tu es peut être hostile à utiliser des soft MS. :byebye:

Lien vers le commentaire
Partager sur d’autres sites

C'est la méthode GetDlgItemText

il te faut

#include <windows.h>

la méthode à 4 paramètres

GetDlgItemText(hWnd, IDC_OBJET, Ma_variable, Longueur);

le 1er : l'instance de la fenetre

le 2eme : le "numéro" de ton objet EDITTEXT

le 3ème : la variable résultat

le 4ème : la longueur de texte que tu veux récupérer

et ce n'est pas une question conne !! :cdmalades:

d'ailleurs, il serait INtéressant de savoir combien de personne connaissait la réponse....... :cdmalades: []

Lien vers le commentaire
Partager sur d’autres sites

ah, bien merci mogwai93,

tu n'aurais pas un ptit tuto, qui explique/détaille toutes ces petites fonctions de lecture/écriture dans les Items ?

ça m'arrangerait bien ^^

:iloveyou:  :-D

Désolé, je n'ai pas de tuto

Tu peux aller voir dans le topic Références en programmation des INpactiens

Sinon

un tour sur la MSDN de Microsoft

et regarder les methodes GetDlgItem, SetDlgItem, GetWindowText, SetWindowText et assimilées

D'ailleurs je suis preneur aussi, car je n'ai pas trouvé bcp de monde avec ce genre de connaissances

A part celui-là : http://www.foosyerdoos.fsnet.co.uk/, je n'ai pas trouvé mieux

Comment peut on récupérer l'instance d'une fenêtre, si on la crée avec un .rc ?

Un petit exemple :

BOOL CALLBACK DialogProc(  HWND hWnd,
       UINT message,
       WPARAM wParam, 
       LPARAM lParam  )
{
             
   switch (message)
   {
         // Gestion des évenements à gérer 
        case WM_CLOSE:
               EndDialog(hWnd,0);
        break;
   }

   return false;
}

int WINAPI WinMain(  HINSTANCE hInstance,
    HINSTANCE hPrevInstance,
    LPSTR lpCmdLine,
    int nCmdShow )
{
   int i = DialogBox( hInstance,
                MAKEINTRESOURCE(IDD_DIALOG1),
                NULL,
                (DLGPROC)DialogProc );

   if( i == -1 ) MessageBox(NULL,"Une erreur inattendue est survenue.","TITRE",MB_OK|MB_ICONSTOP);

   return false;
}

Biensûr le code ci-dessus ne fonctionne pas, car il faut déclarer certaines variables et le fichier .rc

C'est dans la méthode DialogProc, que tu récupéres l'instance de ta fenetre

Tu peux poser d'autres questions

J'essaierai d'y répondre dans la limite de mes connaissances

Lien vers le commentaire
Partager sur d’autres sites

merci tous, j'vois un peu plus clair mnt ^^

autre petite question qui peut paraître anodine mais bon, vu que c'est du graphique les fonctions printf © ou cout (c++) ne peuvent plus être utilisées ? Car j'aimerais bien avoir un retour du contenu de mes variables pour voir où ça coince ds mon programme :\ merci

Lien vers le commentaire
Partager sur d’autres sites

si tu es sous Visual C++

il te faut rajouter un static

si tu es sous DevCpp, rajoute un LTEXT dans le .rc

   LTEXT           "Texte",IDC_STATIC,<position x>,<position y>,<longueur>,<hauteur>

puis tu utilises la méthode SetWindowText(hWndStatic, "ton texte");

où hWndStatic est l'instance de ton objet static

sinon, tu peux faire un fichier de log...

(la gestion des fichiers est similaire sous Windows que sous DOS)

Lien vers le commentaire
Partager sur d’autres sites

rah.. j'm'embrouille :(

on peut faire apparaitre une variable de type int dans un static/une messagebox ?

car en essayant à la barbare ça veut pas passer cf :

int test=2;

stLabel.SetWndCaption(test);

non, il faut que tu la transformes en string ou (char *) ou (char [])

tu peux utiliser la methode sprintf, enfin il me semble, je me rappelles plus trop

EDIT :

ce n'est sprintf (qui concatène 2 chaines de caracteres), mais je ne sais plus laquelle,

sinon, il y a la methode

SetDlgItemInt(hWndStatic, IDC_STATIC1, <ma_variable_integer>, true);

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...