WFA auf console ausgeben?
-
Hallo,
wie kann ich bei einer WFA, auf die Konsole etwas ausgeben !?
Mein Ansatz:namespace a { static class Program { [System.Runtime.InteropServices.DllImport("kernel32.dll", SetLastError = false)] private static extern bool AttachConsole(int dwProcessId); const int ATTACH_PARENT_PROCESS = -1; [System.Runtime.InteropServices.DllImport("kernel32.dll", SetLastError = false)] private static extern bool FreeConsole(); [STAThread] static void Main(String[] args) { if (args.Length != 0) { if (AttachConsole(ATTACH_PARENT_PROCESS)){ Console.WriteLine("KEINE AUSGABE"); } if (args[0].Contains("/?")) { Console.WriteLine("KEINE AUSGABE"); } } Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); try{Application.Run(new Main(args));} catch (System.Exception) { } FreeConsole(); } } }
jedoch erwische ich nicht die "console"
-
Weiß niemand woran es hängt ?
-
Du hast vermutlich noch keine Console erzeugt, versuchs mal mit
AllocConsole();
-
Mach eine Konsolenanwendung - dann wird automatisch eine Konsole geöffnet, die über System.Console angesprochen werden kann (- In einer Konsolenanwendung kann man auch Fenster erstellen und anzeigen).
Stelle eich in Eigenschaften > Anwendung > Ausgabetyp auf KonsolenanwendungAußerdem ist das C# und nicht C++/CLI und dann braochst du auch keine "P/Invoke"s.
Du kannst dann nur die Konsole nicht zwischenzeitig schießen.