Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Meldung an anderem PC ausgeben (https://www.delphipraxis.net/154092-meldung-anderem-pc-ausgeben.html)

Ines 27. Aug 2010 10:24

Meldung an anderem PC ausgeben
 
Hallo DP'ler

ich möchte an einem anderen PC eine Meldung (Popup o.ä.) ausgeben.
Könnt' ihr mir bitte sagen, wie ich das am besten mache?

Hintergrund: Immer wenn ein neuer Datensatz in eine Relation geschrieben
wird, dann muß eine Kollegin an einem anderen Arbeitsplatz diesen weiter-
verarbeiten. Bisher funktioniert dies via Telefon.
EMail funktioniert leider nicht!

Vielen Dank
Ines

Delphi2009, WindowsXP

mkinzler 27. Aug 2010 10:25

AW: Meldung an anderem PC ausgeben
 
-MailSlots
-NamedPipes
...

blackfin 27. Aug 2010 10:27

AW: Meldung an anderem PC ausgeben
 
Die einfachste Methode mit Popup ist wohl über den Windows Nachrichtendienst, sofern er aktiviert ist.
http://de.wikipedia.org/wiki/Nachric..._%28Windows%29

Luckie 27. Aug 2010 10:59

AW: Meldung an anderem PC ausgeben
 
Noch einfacher: Installiert ein Chatprogramm auf euren Firmen Server. In der Firma haben wir zur internen Kommunikation Yabber installiert.

divBy0 27. Aug 2010 12:10

AW: Meldung an anderem PC ausgeben
 
Eine Netzwerkverbindung z.B. mit den Indy-Komponenten aufbauen und Nachricht verschicken.

Du brauchst dann nur eine Anwendung auf dem Rechner, wo die Nachricht angezeigt werden soll, die die Verbindung annimmt und bei Empfang entsprechend reagiert.

Luckie 27. Aug 2010 12:25

AW: Meldung an anderem PC ausgeben
 
Und wenn du es wirklich selber schreiben willst, im Forum gibt es genug Threads wie man Chats mit den Indy-Komponenten erstellt, wenn da nicht sogar eine entsprechende Demo dabei ist.

himitsu 27. Aug 2010 12:36

AW: Meldung an anderem PC ausgeben
 
Zitat:

Zitat von divBy0 (Beitrag 1045509)
Du brauchst dann nur eine Anwendung auf dem Rechner, wo die Nachricht angezeigt werden soll, die die Verbindung annimmt und bei Empfang entsprechend reagiert.

Der schon genannte Windows Nachrichtendienst ist schon soein fertiges Programm.


Wenn die Verarbeitung des entsprechenden Datensatzes in einem eigenem Programm gemacht wird, dann könnte man natürlich auch dort direkt eine Meldefunktion integrieren, wo man eventuell sogar gleich noch den gewünschten Datensatz läd oder was auch immer nötig ist.

Luckie 27. Aug 2010 12:38

AW: Meldung an anderem PC ausgeben
 
Aber aus Sicherheitsgründen ab Windows XP SP2 standardmäßig deaktiviert und ab Windows Vista nicht mehr vorhanden, weil darüber auch Spam verteilt wurde.

blackfin 27. Aug 2010 12:40

AW: Meldung an anderem PC ausgeben
 
Zitat:

und ab Windows Vista nicht mehr vorhanden
Stimmt nicht ganz, da gibt es das gleiche nämlich auch, heisst nur anders: MSG.exe

Zitat:

aus Sicherheitsgründen ab Windows XP SP2 standardmäßig deaktiviert
Stimmt schon, allerdings finde ich das jetzt nicht so schlimm, wenn man den im LAN für diesen Zweck aktiviert.
Es darf halt nur nichts von Aussen rein, dafür kann aber eine Firewall sorgen :)

himitsu 27. Aug 2010 12:42

AW: Meldung an anderem PC ausgeben
 
Zitat:

Zitat von Luckie (Beitrag 1045520)
Aber aus Sicherheitsgründen ab Windows XP SP2 standardmäßig deaktiviert und ab Windows Vista nicht mehr vorhanden, weil darüber auch Spam verteilt wurde.

Ohh, wenn er nur deaktiviert wäre, dann hätte man ihn ja aktivieren können.

Wenn dieser über die Firmenfirewall nach außen hin gesperrt wäre, dann hätte er firmenintern ja ausgereicht und wäre vor "externem" Spam sicher.

Luckie 27. Aug 2010 12:43

AW: Meldung an anderem PC ausgeben
 
Aber das ist dann nicht mehr der Nachrichtendienst oder? Wo finde ich die Exe unter Windows 7 (Starter)?

blackfin 27. Aug 2010 12:45

AW: Meldung an anderem PC ausgeben
 
Wie ich bereits sagte, den gibts unter Vista und Win7 auch noch, er heisst da nur "MSG.exe"

blackfin 27. Aug 2010 12:46

AW: Meldung an anderem PC ausgeben
 
Zitat:

Wo finde ich die Exe unter Windows 7 (Starter)?
Im Starter gibt es die nicht, erst ab der "Business"-Version

Zitat:

Aber das ist dann nicht mehr der Nachrichtendienst oder?
Zitat Wikipedia:

Zitat:

In den Windows Vista-Versionen Business und Ultimate, sowie in Windows 2008 und Windows 7 wurde der NET SEND-Befehl durch das Programm MSG.exe ersetzt. Die Versionen Home Basic und Home Premium enthalten keinen systemeigenen Nachrichtendienst.

Luckie 27. Aug 2010 12:51

AW: Meldung an anderem PC ausgeben
 
OK. Das erklärt, warum ich sie hier auf dem Netbook nicht finde.

himitsu 27. Aug 2010 12:51

AW: Meldung an anderem PC ausgeben
 
Zitat:

Zitat von blackfin (Beitrag 1045525)
Zitat:

Die Versionen Home Basic und Home Premium enthalten keinen systemeigenen Nachrichtendienst.

Also hat man diesen quasi für eine Firmeninterne Kommunikation im Windows belassen. :angel2:

Luckie 27. Aug 2010 13:02

AW: Meldung an anderem PC ausgeben
 
Nur aus Neugier, wie heißt der Dienst, der auf dem Ziel-PC laufen muss, um die Nachrichten von der Msg.exe empfangen zu können?

blackfin 27. Aug 2010 13:06

AW: Meldung an anderem PC ausgeben
 
Da braucht man keinen Dienst mehr für, das kann Windows dann "out of the box"...wenn ich mir das jetzt aber so überlege, ist das doch ein Rückschritt statt Fortschritt. Vorher hat man entscheiden können, ob man den will oder nicht, bei Vista / Win7 wird es einem ohne Deaktivierungs-Möglichkeit aufs Auge gedrückt, wenn man eine Version >= Business hat....öhm....:wall::wall:

Edit: Achja, ich glaub man kann das jetzt über die "Terminal Services" konfigurieren....

Luckie 27. Aug 2010 13:10

AW: Meldung an anderem PC ausgeben
 
Hm, dann würde mich interessieren, wie das funktioniert. Weil irgendwas muss ja die Nachricht empfangen.

blackfin 27. Aug 2010 13:11

AW: Meldung an anderem PC ausgeben
 
Ja ich denk mal ein Sub-Modul der "Windows Terminal Services", das ist ja ein Dienst :D
Edit: Auf Deutsch: Terminal-Dienste (ach ne! :D)

mkinzler 27. Aug 2010 13:12

AW: Meldung an anderem PC ausgeben
 
Terminal Services ist aber eigentlich was anderes. das ist ja die Remote Desktop Freigabe

himitsu 27. Aug 2010 13:16

AW: Meldung an anderem PC ausgeben
 
Nja, irgendwas wird wohl auf einem bestimmten Port lauschen ... diesen könnte notfalls via Firewall blockieren.

blackfin 27. Aug 2010 13:19

AW: Meldung an anderem PC ausgeben
 
Zitat:

Terminal Services ist aber eigentlich was anderes. das ist ja die Remote Desktop Freigabe
Jup, und darunter läuft nun wohl auch die MSG.exe:
Anscheinend gibts die ja unter XP auch schon:
Zitat:

To recap...MSG.EXE is completely seperate from NETSEND.
It does NOT need the messenger service to be running and is available on XP and Vista.
For it to work on XP over a domain you must add a registry key.
HKLM\System\CurrentControlSet\Control\Terminal Server
Dword=AllowRemoteRPC
Value=1

mkinzler 27. Aug 2010 13:20

AW: Meldung an anderem PC ausgeben
 
Die Möglichkeit über
Code:
net send
geht aber nicht mehr (net kennt den Befehl nicht mehr) und der dazugehörige Dienst Messenger funktioniert auch nicht mehr.

Vielleicht wurde er zu Gunsten, des nun in Exchange integrierten IM Dienstes entfernt

Neumann 27. Aug 2010 15:30

AW: Meldung an anderem PC ausgeben
 
Manche Datenbanken wie z.B. Firebird können Nachrichten senden. Datensatz wird geändert - Trigger sendet Message an alle Client-Programme die es interessiert.
Etwas aufwendiger ist, dies per Mail zu machen. Das kann man mit Indy realisieren, es gibt ein Beispiel dazu. Als Mailserver kann man dann z.B. Exchange oder Hmailserver intern benutzen, wenn man nicht über einen externen Provider gehen will.

Gruß

Ralf


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:38 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz