Programme en C, interface graphique

Fermé
jazzy_town - 28 mai 2005 à 19:09
Luffy =) Messages postés 365 Date d'inscription mercredi 20 avril 2005 Statut Membre Dernière intervention 19 mai 2006 - 29 mai 2005 à 20:43
Bonjour tout le monde.

Je me demandais s'il était possible de créer une toute petite interface graphique en C qui permettrait de parcourir ses dossiers sous windows afin d'y sélectionner un fichier afin qu'il soit lu par un programme.

Par ailleurs j'aimerais à partir d'informations récupérées dans ce premier fichier en créer un second. Existe-il un moyen, au sein d'un programme d'à la fois lire un fichier et écrire dans un autre, un double buffer par exemple où quelque chose d'équivalent?

L'idéal serait que l'interface grapique comprenne un champ de saisie permettant de nommer le fichier qui sera créé par le programme.

Voilà voilà. Si quelqu'un à de idées ou des solutions, je suis preneur.
Même de simples suggestions (sauf s'il s'agit de changer de langage... ;))
A voir également:

1 réponse

Luffy =) Messages postés 365 Date d'inscription mercredi 20 avril 2005 Statut Membre Dernière intervention 19 mai 2006 110
29 mai 2005 à 20:43
salut =)

pour sélectionner un fichier dans une boite de dialogue, windows met à disposition des API qui font déjà tout le boulot (GetOpenFileName() ). je viens de faire ce petit bout de code qui affiche cette boite de dialogue et affiche le nom du fichier sélectionné :
#include <stdio.h>
#include <windows.h>

int main()
{
	char n_file[256];
	BOOL ret;

	n_file[0]=0;
	OPENFILENAME file;
	memset(&file,0,sizeof(OPENFILENAME));
	file.lStructSize=sizeof(OPENFILENAME);
	file.hwndOwner =NULL;
	file.lpstrFilter="*.*\0";
	file.lpstrCustomFilter = NULL;
	file.nMaxCustFilter=NULL;
    file.nMaxFile = 256;
	file.lpstrFile = n_file;
	file.nFilterIndex = 0;
    file.lpstrTitle=NULL;
    file.lpstrFileTitle =NULL;
	file.nMaxFileTitle=0;
    file.lpstrInitialDir = NULL;
    file.lpstrTitle = NULL;
    file.Flags = OFN_EXPLORER | OFN_PATHMUSTEXIST;
    file.lpstrDefExt = NULL;
	
	if (GetOpenFileName(&file)==0)
		printf("Erreur...");
	else
		printf("%s\n",file.lpstrFile);

	system("pause");

	return 0;
}

pour plus de précisions là-dessus voir la msdn .

sinon, pour lire et écrire dans un fichier, utilise les fonctions standard du C. tu peux les trouver ici : http://www.lri.fr/~aze/page_c/aide_c/matieres.html dans la rubrique "fichier".

++
2