2010-07-18 11 views
0

J'ai besoin d'un Widget de terminal capable d'émuler une console Windows et un simple terminal VT100 sous Windows. Quelque chose comme VTE pour GTK ou QConsole pour QT.Widget Terminal pour les applications MFC/Win32?

Est-il même possible d'exécuter une console Windows comme cmd.exe dans une fenêtre enfant?

Répondre

1

Habituellement, une «console» ou un terminal se connecte à une interface rs-232. cmd.exe est AFAIK une application native agissant uniquement comme un interpréteur de ligne de commande. Par conséquent, vous ne serez pas en mesure de l'utiliser dans une fenêtre enfant.

Avez-vous besoin d'un émulateur de terminal qui communique avec un VT100? Si oui, il y a des tonnes de là-bas. Si vous voulez écrire votre propre interface, jetez un oeil à la Windows PowerShell API. Un autre grand projet Open Source pour réaliser quelque chose que vous voulez est PuTTY pour Windows sous licence MIT. Vous pouvez communiquer avec le VT100 en utilisant Telnet. Le client Windows Telnet doit être accessible à l'aide de PowerShell.

+0

Le code source de PuTTY est malheureusement un complexe terrible. Mais oui c'est exactement ce que je veux. Juste sans tout le chiffrement et en tant que composant intégrable. Le contenu de l'interface graphique dans PuTTY est totalement câblé avec le reste du programme. – Lothar

1

Appelez simplement AllocConsole pour créer votre propre fenêtre de console. Vous pouvez utiliser les fonctions CRT du mode console normal pour lire et écrire depuis/vers. Une approche plus conviviale GUI serait de simplement créer une fenêtre avec un contrôle d'édition readonly multi-lignes avec une police à pas fixe.

+0

Mais il y a beaucoup plus, appelé Escape Sequences, je n'ai trouvé aucune documentation à leur sujet (les Unix VT100 etc. sont tous bien documentés). Même l'obtention du mode Echo pour une entrée/sortie multiplexée correcte n'est pas facile. – Lothar

+0

Eh bien, ce serait votre travail de les mettre en œuvre. Il a certainement été fait avant, un google rapide s'est trouvé http://sourceforge.net/projects/rote/ –

Questions connexes