Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » Winapi + consolefenster

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
25.07.2006, 13:54 Uhr
~Yakusa
Gast


Hallo,

ich würde gerne während ich meine winapi anwendung laufen lassen, im hintergrund ein konsolenfesnter aufmachen, in dem ich den inhalt von bestimmten variablen/listen ausgebe - um diese zu kontrollieren.

gibts eine möglichkeit bei einem win-api programm die konsole zu öffnen und sowas zu machen`?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
25.07.2006, 14:01 Uhr
Oliver
S2-Pixelgeneral


Mach doch einfach eine Konsolenanwendung und öffne dort ein Windowsfenster.
--
Demokratie ist die Diktatur der Mehrheit.

www.siedler25.org/ ( Siedler2 - Remake )
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
25.07.2006, 14:31 Uhr
~Yakusa
Gast



Zitat von Oliver:
Mach doch einfach eine Konsolenanwendung und öffne dort ein Windowsfenster.


Das bedeutet ich brauch nur die windows.h zu includieren und dann anstelle der WinMain die Main zu benutzen - oder stell ich mir das zu einfach vor?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
25.07.2006, 19:15 Uhr
Oliver
S2-Pixelgeneral


Genau.
--
Demokratie ist die Diktatur der Mehrheit.

www.siedler25.org/ ( Siedler2 - Remake )
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
25.07.2006, 21:52 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


und den projekttyp logischerweise auf Konsolenanwendung, sonst sucht er nach einer WinMain.
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
26.07.2006, 03:10 Uhr
Hans
Library Walker
(Operator)


@Oliver: Kann es sein, das Du da Unsinn vorgeschlagen hast, und er das nicht bemerkt hat?
So wie ich das verstehe, will er in dem Konsolenfenster Variablenwerte ausgeben, die er in dem Win-Programm benutzt. Das geht zwar, wenn es im Winprogramm so vorgesehen ist, (was bei ihm wohl auch der Fall zu sein scheint) wird aber irgendwann zu Umständlich.
Ansonsten ist das kontrollieren von Variablenwerten ein Fall für den Debugger, den ich hier wärmstens empfehle.

Hans
--
Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
26.07.2006, 09:17 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


naja hab auch so verstanden das er ein Programm hat (das er selbst schreibt) und aus diesem von diesem auf eine Konsole Werte ausgeben zu lassen. Imho gabs auch einen Beitrag von Uwe in der FAQ zu dem Thema irgendwo, wie man aus ner "normalen Anwendung" Konsolenfenster aufmacht.
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
26.07.2006, 09:37 Uhr
Oliver
S2-Pixelgeneral


@Hans: Wieso ist das Unsinn? Es verbietet dir doch niemand zusätzlich noch den Debugger zu verwenden? Manche Dinge kann man nicht im Debugger ansehen oder es ist zu umständlich und mit der Konsole einfacher. Kann doch jeder machen, wie er will und es ihm am einfachsten ist, was ist da so tragisch, eine Konsole zu öffnen?
--
Demokratie ist die Diktatur der Mehrheit.

www.siedler25.org/ ( Siedler2 - Remake )
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
27.07.2006, 10:42 Uhr
RedEagle



Die funktion benutze ich bei meinen Programmen immer. Man kan die konsole über eine *.ini ein und ausschalten.


C++:
#include <windows.h>
#include <io.h>
#include <stdio.h>
#include <fcntl.h>

bool console; //bei true ist die Konsole offen, sonst nicht

bool OpenConsole(char* title)
{
char value[10];
GetPrivateProfileString("onload", "console", "0", value, 10, ".\\settings.ini");
if(value[0]=='1')
{
  console=true;
}
else //Keine Konsole
{
  console=false;
  return false;
}

if(AllocConsole()==0)
{
  MessageBox(NULL, "AllocConsole() failed", "Error", MB_ICONSTOP|MB_OK);
  return false;
}

int hCrt = _open_osfhandle((long)GetStdHandle(STD_OUTPUT_HANDLE), _O_TEXT);
*stdout = *_fdopen(hCrt, "w");
setvbuf(stdout, NULL, _IONBF, 0);

SetConsoleTitle(title);

return true;
}

void CloseConsole()
{
if(console) FreeConsole();
}


settings.ini:
[onload]
console=0

--
MFG RedEagle
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: