| 

.NET C# Java Javascript Exception

5
Hallo Allerseits,

ich möchte - wie es schon im Titel steht - ein Event was Programm A schmeißt in Programm B auffangen. Etwas praktischer erklärt: Auf meiner Form1 sitzt ein Button welchen ich anklicke.
In der Click Procedure sende ich dann via Raise Event MeinEvent("Hallo Welt"). (Das Event ist natürlich als Public Event entsprechend definiert) Das ist alles was Programm A macht.

In Programm B habe ich einen Verweis auf A und deklariere wie folgt (Code jetzt aus dem Gedächtnis):

Imports A

class Blub

Private A_ref as new A.Form1


..und versuche dann in der handel Procedure das Event aufzufangen

Private sub GibMirDasVerdammteEvent(info as string) handels A_ref.MeinEvent
MsgBox("Bin da!" & info)
end sub

Kurz und gut wenn ich beide Programme dann starte möchte ich das wenn ich bei A auf den Button klicke B mir sagt das ich das gerade gemacht habe.

Irgendwie weiß ich das dass konzeptionell nicht funktionieren kann, aber wie macht man
so etwas richtig? Mir würde es schon reichen wenn ich wüßte wie mein Freund heißt den ich suche. Ich vermute sowas in Richtung COM Objekte, COM Interfaces oder so - mir fehlt aber irgendwie der praktische Bezug.

Hintergrund: Wer den "Client Line Manager" (CLMgr.exe) kennt und auf diesen ein eigenes
Programm "aufgesetzt" hat (was immer "aufsetzen" bedeutet) weiß was ich will. :-)
Das Ding bindet man als Verweis einfach ein und empfängt über die entsprechende Handle Procedure Events des Programms. Wie kriegt man sowas hin oder anders gefragt: was ist A für ein Programm?

danke
22.09.2012
Buchhalter69 31 3
2 Antworten
4
Ich sehe da eine Reihe von Möglichkeiten für die Interprozess-Kommunikation:

  • Standard Windows Message (siehe z.B. hier)
  • .NET Remoting (siehe z.B. hier)
  • WCF (siehe z.B. hier)
  • Ein named EventWaitHandle (siehe z.B. hier)
  • XDMessaging (siehe hier)
  • ...

Egal für welche Technik Du Dich entscheidest, Du kannst es in Programm B schlussendlich immer transparent über ein Standard .NET Event leiten.

HTH
Florian
22.09.2012
ffordermaier 8,4k 3 9
0
Uhhi, ist ja ne Menge :-) Danke, guck ich mir an!
22.09.2012
Buchhalter69 31 3
2
Sollten im Detail weitere Fragen auftreten, erstelle einfach eine neue Frage.
Ansonsten ist es hier auf codekicker üblich, alles was keiner Antowrt auf eine Frage entspricht, mit Hilfe der Kommentarfunktion zu kommunizieren.
ffordermaier 22.09.2012

Stelle deine .net-Frage jetzt!
TOP TECHNOLOGIES CONSULTING GmbH