MFC

stgi02
MFC

bonjour,

j' ai des questions " théoriques " sur le c++

j utilise visual studio.net

est ce que ce programme utilise la bibliothèque MFC?
est ce que le MFC procure les outils tels que textBox ou autre? y at il un rapport avec l'API windows

merci

fredericmazue

> j' ai des questions " théoriques " sur le c++

Tes questions ne concernent pas le c++ proprement dit ni sa "théorie", mais une librairie.

>j utilise visual studio.net
> est ce que ce programme utilise la bibliothèque MFC?

Quel programme ? Visual Studio ?
Disons qu'avec Visual Studio tu peux programmer des applications avec les MFC. Etait-ce cela que tu voulais savoir ?

> est ce que le MFC procure les outils tels que textBox ou autre?

Evidemment.

> y at il un rapport avec l'API windows

MFC est une encapsulation "bas niveau", si je peux m'exprimer ainsi, des API Windows.
Par bas niveau je veux dire que MFC reste très très proche des API Windows, en comparaison d'autres librairies telels que Qt ou WxWidgets.

Toujours l'hyper terminal ?

stgi02

salut,
je pose ces questions car je dois un peu expliquer cela pour mon rapport.
on m'a dit que les boutons ,textbox,.. "est fourni par le système graphique de Windows, MFC ne fait qu'encapsuler tout cela dans des classes C++"est)ce vrai, je pose cela pour être bien informer pour ne pas écrire n'importe quoi dans mon rapport.

pour l'hyper terminal c'est quasi fini ,mais j'ai un problème ,est ce que tu pourrais m'aider ,je m'explique:

j' ai fais des test avec un automate et mon hyper terminal(il sert simplement pour la réception), l'automate envoie des données sous la norme VT100 mais ça me pose problème car moi c'est en ANSI.
le text que je devais recevoir aurait du etre positionné à différents endroits mais ce n'est pas le cas, je reçois toutes les lignes de textes les un en dessous des autres et avec au début de chaque ligne des caractères de positionnement . moi j'ai pensé comme solution de gérer le positionnement mais c'est un travail trés lourd.
est ce qu'il y a quelque chose qui pourrait convertir VT100 et ANSI et peut être que mon problème serait résoulu.

merci bcp

fredericmazue

> on m'a dit que les boutons ,textbox,.. "est fourni par le système
> graphique de Windows, MFC ne fait
> qu'encapsuler tout cela dans des classes C++"est)ce vrai,

Oui c'est vrai.

> moi j'ai pensé comme solution de gérer le positionnement mais c'est un
> travail trés lourd.

Oui c'est très lourd.
Et je dois dire que la TextBox n'est vraiment pas le plus souple pour ça
Un terminal VT100, le mieux est de le coder dans une fenêtre Windows, c'est à dire en API Windows pur ou en MFC, c'est presque pareil sur le fond, avec moins de code avec MFC. Et je dis bien une fenêtre, avec une police à pas fixe, pas un contrôle Edit. Un contrôle Edit est le contrôle système (Windows) qu'il y a sous le CEdit des MFC ou le TextBox de .Net
Au risque de me répéter, le choix du C++ managé n'est vraiment pas pertinent pour faire ton hyper terminal. Je trouve vraiment dommage que l'on t'ait obligé à faire comme ça. :(
Mais si ça peut te consoler, dis toi que ton hyper terminal n'en est pas vraiment un car tu ne fais que lire le port, dis tu.
Si tu devais lire et écrire, avec ton C++ managé, tu aurais rencontré bien plus de problèmes.

stgi02

avec mon hyper terminal je sais écrire et lire mais pour ce test il ne fait que réceptionné .

j' ai pas bien compris ta réponse .est ce que tu pourrais me l'expliqué

j' ai effectué le même test avec l'hyper terminal de windows xp et le résultat est correct car dans cet hyper terminal il y une option qui détecte la norme. donc j'en conclu que mon problème vient bien de la différence entre ANSI et VT100

merci de ton aide

fredericmazue

> avec mon hyper terminal je sais écrire et lire mais pour ce test il ne fait
> que réceptionné .

Hum.
Comme tu n'a pas dit que tu avais des threads distincts pour la lecture et l'écriture, pour ne prendre que ce point, j'ai de gros doutes en ce qui concerne le fonctionnement en toutes situations de ton hyper terminal.

> j' ai pas bien compris ta réponse .est ce que tu pourrais me l'expliqué

Je ne sais pas quoi te dire. Sinon que l'hyper terminal de Windows est un "vrai", codé en API Win32. Et évidemment sa "WndProc" est capable de faire la différence entre un CR et un ESC D et d'agir en conséquence sur l'affichage.
A priori c'est ce que tu dois faire aussi.