1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

Output in konsole fuer WIN32 Applications

    • Frage
  • nexus
  • 5. April 2005 um 17:15
  • Unerledigt
  • nexus
    8
    nexus
    Mitglied
    Punkte
    580
    Beiträge
    91
    • 5. April 2005 um 17:15
    • #1

    Hi
    Ein lame problem. Ich schreibe eine WIN32 Aplikation und brauche manchmal mit printf einige sachen 'outputen'. Da aber mein projekt ein WIN32 projekt ist kann ich es nicht :(. Weis jemand wie man das einschalten kann? Vielleicht reicht eine kleine aenderung in Projekt Properties(VC++ 2003 .NET)

    "Socialism is Bolshevism with a shave." 
    -'Detroit Journal'

  • phax
    5
    phax
    Mitglied
    Punkte
    205
    Beiträge
    41
    • 6. April 2005 um 01:22
    • #2

    Muss es mit der Option "-subsystem:windows" gelinkt werden (ist es eine GUI-App). Wenn nicht kannst du mit "-subsystem:console" eine Console-App bauen.
    Wenn das nicht geht, kannst du einfach die Ausgabe deiner EXE in eine Datei umleiten:
    app.exe -parameter > stdout_result.txt
    -> schreib die Ausgaben von stdout in stdout_result.txt
    Um die Ausgabe von stderr abzufangen schreibst du sowas:
    app.exe -parameter 2> stderr_result.txt
    Wichtig: kein Leerzeichen zwischen "2>" !!
    Du kannst es auch kombinieren:
    app.exe -parameter > stdout_result.txt 2> stderr_result.txt

  • nexus
    8
    nexus
    Mitglied
    Punkte
    580
    Beiträge
    91
    • 6. April 2005 um 16:03
    • #3

    Vielein dank! Das mit umleiten in ein datei hat funktioniert. Obwohl ich finde es am bischen umstaendig. Besser were es mit eine konsole. Also mein Programm ist eine gui-app (hat /subsystem:windows) in optionen. Ich habe probiert noch /subsystem:console dazu zu schreiben aber ich habe bei linken fehler bekommen. Es muesste aber gehen, ich denke bei java geht sowas. Also wenn du noch ideen hast... ;]

    "Socialism is Bolshevism with a shave." 
    -'Detroit Journal'

  • phax
    5
    phax
    Mitglied
    Punkte
    205
    Beiträge
    41
    • 6. April 2005 um 16:35
    • #4

    Es gibt die Möglichkeit dynamisch eine Konsole zu öffnen, wie besipielsweise bei Mozilla (mozilla.exe -console).
    Wenn du sowas als Debugfenster brauchst, kann ich den Code mal suchen.

  • Kongo
    6
    Kongo
    Mitglied
    Punkte
    295
    Beiträge
    44
    • 6. April 2005 um 16:35
    • #5

    Also wenn du in den Projektoptionen->Linker->System auf console umstellt und dann die Prozedur WinMain() durch eine main() ersetzt sollte es gehen.

    Oder du machst dir ein neues Projekt:
    Datei->Neu->Projekt
    Visual C++ Projekte
    Win32 - Konsolenprojekt

    Es is eigentlich egal ob du hier Win32-Projekt oder Konoslenprojekt nimmst da du im naechest Dialog das immer noch aender kannst unter Anwendungseinstellungen.

    :thumb: Geschrieben nach der alten, neuen und zukünftigen Rechtschreibung! :thumb:

  • Zentor
    16
    Zentor
    Mitglied
    Reaktionen
    5
    Punkte
    2.710
    Beiträge
    506
    • 6. April 2005 um 17:30
    • #6

    Ich glaub im VisualStudió sieht man ConsolMessages auch bei Win32 Programmen zur Laufzeit (ganz unten).
    mfg Oliver

  • nexus
    8
    nexus
    Mitglied
    Punkte
    580
    Beiträge
    91
    • 6. April 2005 um 18:09
    • #7

    Cyrill. Leider VS mach das nicht ;[, Eclypse(java) aber schon

    phax. Ich danke aber es ist nicht notwendig weil...

    Kongo. Deine methode hat funktioniert. statt int WINAPI WinMain(...) habe ich durch int main(...) ersetzt und in properties linker subsystem von subsystem:windows auf subsystem:console gewechselt.

    Ich danke euch allen, ich habe wieder was gelernt :]

    "Socialism is Bolshevism with a shave." 
    -'Detroit Journal'

  • phax
    5
    phax
    Mitglied
    Punkte
    205
    Beiträge
    41
    • 6. April 2005 um 19:10
    • #8
    Zitat von Zentor

    Ich glaub im VisualStudió sieht man ConsolMessages auch bei Win32 Programmen zur Laufzeit (ganz unten).

    Das geht aber nur mit OutputDebugString und nicht mit den printf etc. Sachen.
    Freut mich aber das es jetzt funzt.
    Dabei ist aber zu beachten, dass jetzt jedesmal eine Konsole aufgeht, auch wenn man das Programm aus dem Explorer startet.

  • Maximilian Rupp 27. Dezember 2024 um 12:06

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Rechtliches

Impressum

Datenschutzerklärung