![]() |
Ausgabe auf "Pseudoconsole" umleiten
Ich verwende in meinem Programm eine DLL welche bei vorhandensein eines Consolenfensters Debugausgaben auf diese erledigt.
Jedoch möchte ich für Fehlersuche nicht jedesmal meine Anwendung als Consolenapplikation kompilieren und dieses "Hässliche" Fenster haben, deshalb suche ich nach einer Möglichkeit intern ein verstecktes Consolenfenster zu erzeugen welche ich bei Bedarf auslese und in einem eigenen "Debugfenster" anzeige. Hat jemand für mich Tipps/Codbeispiel/...? |
Re: Ausgabe auf "Pseudoconsole" umleiten
Hallo Bernhard,
hilft dir vielleicht dieser thread weiter: ![]() Freundliche Grüße |
Re: Ausgabe auf "Pseudoconsole" umleiten
Wenn es um eine versteckte Ausgabe geht kannst du doch auch ein Memo etc. nehmen. Dann übergibst du der DLL einen Funktionspointer von einer Funktion welche Texte entgegen nimmt. Somit kannst du im Hauptprogramm selbst eintscheiden wie du die Debugausgabe anzeigst. Du kannst dir natürlich auch mal OutputDebugString anschauen, das ist genau für sowas gedacht.
|
Re: Ausgabe auf "Pseudoconsole" umleiten
Zitat:
Ich habe jetzt versucht den Code der z.B. ![]() Jedoch müßte ich Standard-Output der eigenen Instanz auf die per CreatePipe erzeugten Handels umbiegen. Mit welcher Win32-API könnte ich das machen? |
Re: Ausgabe auf "Pseudoconsole" umleiten
Zitat:
Wenn Du eine Console brauchst, dann erzeug dir eine. Wenn Du sie nicht mehr brauchst, entferne sie wieder. Dieses Consolenfenster sollte auch Deine Java Dingens erkennen ;-) z.B.:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin AllocConsole; SetConsoleTitle('Debug Ausgaben'); end; procedure TForm1.Button2Click(Sender: TObject); begin FreeConsole; end; procedure TForm1.Button3Click(Sender: TObject); begin if GetConsoleCP <> 0 then begin WriteLn('Das ist ein Log'); end; end; |
Re: Ausgabe auf "Pseudoconsole" umleiten
Zitat:
Ich wollte aber dieses "hässliche" Fenster vermeiden und auch eine einfache Möglichkeit bieten das die dort geschriebenen Ausgaben z.B. einfach per Textdatei oder E-Mail mir zugesendet werden. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:46 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz