Als je een windows forms applicatie maakt, heb je altijd (impliciet) de beschikking over een windows message loop. Maar ik wil graag een messageloop hebben voor mijn console-applicatie. Heeft iemand hier enige ervaring mee, toevallig?
Voor zover ik kan bepalen lijkt de message loop aangemaakt te worden door Application.Run(). Maar Run verwacht ofwel een Form, ofwel een ApplicationContext met daarin een Form. En aangezien het een console-application betreft heb ik geen Form tot mijn beschikking (en ik wil er liefst ook geen aanmaken, alleen om een messageloop te krijgen).
De derde Application.Run() heeft helemaal geen argumenten; deze is helemaal apart, want waar stuurt hij de binnenkomende messages dan heen? Is er een manier om deze uit te lezen?
--
Toelichting op mijn misschien wat aparte vraag: Ik ben bezig met een commandline tooltje wat nogal veel met sockets doet. Om thread- en concurrency-problemen zoveel mogelijk te voorkomen wil ik dat alles in dezelfde thread loopt d.m.v. een message loop. Ik wil dan alle operaties asynchroon uitvoeren, en voor elke statusverandering (data ontvangen, verbinding verbroken, etc.) een message definieren, die ik in mijn message loop kan afhandelen.
Voor zover ik kan bepalen lijkt de message loop aangemaakt te worden door Application.Run(). Maar Run verwacht ofwel een Form, ofwel een ApplicationContext met daarin een Form. En aangezien het een console-application betreft heb ik geen Form tot mijn beschikking (en ik wil er liefst ook geen aanmaken, alleen om een messageloop te krijgen).
De derde Application.Run() heeft helemaal geen argumenten; deze is helemaal apart, want waar stuurt hij de binnenkomende messages dan heen? Is er een manier om deze uit te lezen?
--
Toelichting op mijn misschien wat aparte vraag: Ik ben bezig met een commandline tooltje wat nogal veel met sockets doet. Om thread- en concurrency-problemen zoveel mogelijk te voorkomen wil ik dat alles in dezelfde thread loopt d.m.v. een message loop. Ik wil dan alle operaties asynchroon uitvoeren, en voor elke statusverandering (data ontvangen, verbinding verbroken, etc.) een message definieren, die ik in mijn message loop kan afhandelen.