Re: WndProc und Consolen Applikation



Hallo Peter!

ich möchte die Events aus der überschriebenen Methode WndProc in meine
Konsolen (später Dienst) Anwendung umleiten.

Musst Du ein (bestehendes) Kommunikationsprotokoll implementieren? Oder
warum willst Du eine WndProc verwenden?

Da WndProc nur für
Windows.Forms gilt dachte ich mir ich erstelle eine nichtsichtbare
form die mir die Events an meine Konsole übermittelt. Code:

//window
class Notify : System.Windows.Forms.NativeWindow

Warum tust Du Dir den Aufwand an von einem NativeWindow zu erben. Verwende
einfach ein "normales" System.Windows.Form Window.

Message m =new Message();
base.CreateHandle(cp);

An dieser Stelle wird zwar das Handle (und somit das Window) erstellt ...

base.WndProc(ref m);

.... allerdings kann an dieser Stelle noch keine Bearbeitung der Nachricht
stattfinden, da noch keine Message-Queue gestartet wurde.

Notify n =new Notify();
//was nun?

Du musst eine Message-Queue für den Thread starten. Das kann entweder
mittels

Application.Run(n);

oder auch mittels

n.ShowDialog();

erfolgen. In jedem Fall blockiert der Thread bis das Window geschlossen wird
(eben weil dieser klarerweise zur Abarbeitung der MessageQueue "abgestellt"
ist). Es ist aber durchaus möglich dazu einen seperaten Thread zu verwenden.

Der gepostete code funktioniert leider nicht. Es passiert leider gar
nichts... Jetzt weiß ich nicht wie ich die Events aus Notify::WndProc
in meine Konsole "umleite".

Schildere als erstes mal warum überhaupt die WndProc & Windows Messages.
Wenn es dafür nicht eine unabdingbaren Grund (z.B. Kommunikation mit nicht
veränderbaren Komponenten) gibt, würde ich .Net Kommunkationsmechanismen
(z.B. Remoting) verwenden.


OK?
mfg GP


.



Relevant Pages

  • [kde] @ Dotan: As requested (back in March, sorry): Hotkey launcher scripts
    ... special konsole window with its own kwin window rules. ... script tho there's independent hotkey solutions out there too, ... The last bit of the puzzle is that I run a separate konsole ...
    (KDE)
  • Multi Threading Problem
    ... einem Label der Text "Download Beendet" angezeigt ... Da Sockets solche Events nicht ... Funktionen (Verbindung Erfolgreich, ... Empfangen" Funktion in einen Thread ausgelagert habe, ...
    (microsoft.public.de.german.entwickler.dotnet.csharp)
  • Re: OT? VDQ Terminal emulators under FC6
    ... konsole and Terminal both support 256 colours. ... using a compositing window manager, ... This means that if you turn on transparency in the ...
    (Fedora)
  • Re: Tieftauchen
    ... > Redundanter Tiefenmesser =immer in der Konsole ... Prev by Date: ... Next by Date: ... Previous by thread: ...
    (de.rec.sport.tauchen)
  • Re: [kde] Konsole resizing and default size
    ... (Debian Squeeze) ... i'm putting a script together that runs inside a konsole ... window, detects the user-specified size of that konsole, then creates ... In particular, look for two apps, an older non-kde app (which I use here ...
    (KDE)