Avatar billede mulemule Nybegynder
15. december 2006 - 17:40 Der er 7 kommentarer

Writeline til konsol,

Hvordan kan jeg lave det således at jeg kan lave noget ganske almindelig writeline ud til en konsol.

Det er dels noget jeg gerne vil gøre inde fra en Window Application og inde fra asp.net , så det er ikke så let. Jeg ved godt at jeg kan lave System.Diagnostics.Trace.WriteLine og se det inde i Visual Studio.

Men jeg vil have en løsning som også kan bruges på computere uden Visual Studio. Det skal kunne bruges til min produktions server, så det der med at koden er forbundet til en særlig debugger går ikke.

Det ville være en dejlig julegave, jeg føler mig nogen gange lidt blind.
Avatar billede spif2001 Nybegynder
15. december 2006 - 18:09 #1
hmm.. Hvis du opretter en solution som værende en Console application, vil du skulle bruge Console.WriteLine().

Så kan du herefter oprette de forms du vil, men hvordan man skulle lave en Console.WriteLine() fra asp.net ved jeg ikke - er ikke inde i asp.net...
Avatar billede arne_v Ekspert
15. december 2006 - 18:22 #2
jeg lavede engang noget kode til Win Form
Avatar billede arne_v Ekspert
15. december 2006 - 18:28 #3
using System;
using System.Text;
using System.Drawing;
using System.Windows.Forms;
using System.Runtime.InteropServices;

namespace MyFormProject
{
    class MainForm : Form
    {
        public MainForm()
        {
            InitializeComponent();
        }

        void InitializeComponent()
        {
            SuspendLayout();
            Name = "MainForm";
            Text = "This is my form";
            Size = new Size(300, 300);
            ResumeLayout(false);
        }
        private const uint STD_INPUT_HANDLE = 0xfffffff6;
        private const uint STD_OUTPUT_HANDLE = 0xfffffff5;
        private const uint STD_ERROR_HANDLE = 0xfffffff4;
        [DllImport("kernel32.dll")]
        public static extern bool AllocConsole();
        [DllImport("kernel32.dll")]
        public static extern bool FreeConsole();
        [DllImport("kernel32.dll")]
        public static extern int GetStdHandle(uint nStdHandle);
        [DllImport("kernel32.dll")]
        public static extern bool WriteConsole(int hConsoleOutput,
                                              string lpBuffer,
                                              int nNumberOfCharsToWrite,
                                              ref int lpNumberOfCharsWritten,
                                              int lpReserved);
        [DllImport("kernel32.dll")]
        public static extern bool ReadConsole(int hConsoleInput,
                                              StringBuilder lpBuffer,
                                              int nNumberOfCharsToRead,
                                              ref int lpNumberOfCharsRead,
                                              int lpReserved);
        private static int stdin;
        private static int stdout;
        private static void WriteLine(string s) {
            int len = 0;
            WriteConsole(stdout, s + "\r\n", s.Length + 2, ref len, 0);
        }
        private static string ReadLine() {
            int len = 0;
            StringBuilder sb = new StringBuilder();
            ReadConsole(stdin, sb, 256, ref len, 0);
            return sb.ToString(0, sb.Length - 2);
        }
        [STAThread]
        public static void Main(string[] args)
        {
            //Application.Run(new MainForm());
            AllocConsole();
            stdin = GetStdHandle(STD_INPUT_HANDLE);
            stdout = GetStdHandle(STD_OUTPUT_HANDLE);
            WriteLine("Enter line below");
            string s = ReadLine();
            WriteLine(s);
            WriteLine("Press enter to exit");
            ReadLine();
            FreeConsole();
        }
    }
}
Avatar billede arne_v Ekspert
15. december 2006 - 18:34 #4
jeg ved ikke rigtigt hvor en console for en web form app skulle vises henne !
Avatar billede hmortensen Nybegynder
15. december 2006 - 23:28 #5
Kunne en logfil ikke løse problemet?
Avatar billede mh6000 Nybegynder
18. december 2006 - 08:48 #6
Kunne en windows eventlog ikke bruges. Den kan du både bruge i web forms og win forms.
Avatar billede mulemule Nybegynder
18. december 2006 - 13:09 #7
Hmm. Der er selvfølgelig mange teknologiske løsninger, men det var nu dejligt i jsp hvor man bare skrev console.writeline. og så var det det uden alt muligt.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester