Question

je suis devenu fou ... mais j'espère qu'il ya une façon de le faire.

J'ai une classe de base qui a la gestion des événements en elle. Mon application console est en cours d'exécution de mon flux de travail. Une partie de ce flux de travail est de déclencher des événements à des intervalles spécifiques dans un thread séparé pour diffuser l'état actuel des travailleurs (un rythme cardiaque j'ai entendu beaucoup l'appellent).

J'ai aussi un autre programme dans la même solution qui est une fenêtre forme que je veux qu'il soit en mesure d'écouter ce qui se passe dans l'application de la console afin de pouvoir afficher les états des travailleurs. Je l'ai essayé de courir les deux en même temps et vérifié les événements déclenchent, mais le moniteur ne trouve pas l'un des événements soulevés.

Je redoutais qu'il n'y a aucun moyen de le faire, et je vais devoir aller à une méthode d'enregistrement de base de données ou autre chose ... mais quelqu'un de hasard savais comment communiquer entre les applications avec l'événement (ou de l'événement style) logique, je l'apprécierais.

Actuellement, les applications en cours d'exécution sont au même endroit. L'objectif est que l'application du moniteur sera éventuellement attaché avec un diffuseur pour notre réseau afin que nos postes de travail peuvent surveiller certains états des travailleurs sans être connecté à la machine et l'écran principal nous indique l'état complet de tous les travailleurs.

S'il vous plaît laissez-moi savoir si je dois développer / clarifier ce point, ont une guerre vieille regarder étoiles de 2 ans alors que je tape ce que je puisse avoir manqué quelque chose.

Était-ce utile?

La solution

Il y a plusieurs façons: en utilisant Remoting, les fenêtres et les messages personnalisés canaux nommés. Une façon est Comment utiliser des canaux nommés pour communications dans Visual Basic .NET ou Visual Basic 2005

Voici un exemple de communication à distance: Simple Communication inter-processus en VB.Net

Voici un exemple de fenêtres personnalisées messages: VB.NET, VB6 et communication C # Interprocess via la fenêtre de messagerie

Peut-être la façon la plus « mise à jour » est d'utiliser WCF Canaux Callback: au moyen de contrats de rappel dans WCF pour Asynchronous Publier / Inscription événement-style Communication

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top