Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi NetSend nachrichten per API abfangen (https://www.delphipraxis.net/43817-netsend-nachrichten-per-api-abfangen.html)

NikoMitDaMacht 9. Apr 2005 00:25


NetSend nachrichten per API abfangen
 
Hi
wie kann ich eine net send nachricht abfangen?
ich bin durch die suche schon auf das stichwort "mailslot" gekommen weiss aber nicht wie man das ding verwenden kann.
sonst leider nichts gefunden also vielen dank für alle anworten!

Luckie 9. Apr 2005 00:27

Re: NetSend nachrichten per API abfangen
 
Zitat:

Zitat von NikoMitDaMacht
Hi
wie kann ich eine net send nachricht abfangen?
ich bin durch die suche schon auf das stichwort "mailslot" gekommen weiss aber nicht wie man das ding verwenden kann.

Dann frag doch einfach in dem betreffenden Thread nach, was du nicht verstehst.

NikoMitDaMacht 9. Apr 2005 00:30

Re: NetSend nachrichten per API abfangen
 
Bin ja noch nicht auf einen betreffendn Thrad gestoßen sondern nur was on mailslot gelesen

NikoMitDaMacht 9. Apr 2005 02:19

Re: NetSend nachrichten per API abfangen
 
also ich haab jetzt ne kompo geffunden(MdMailSlot..).
aber mit der komm ich nicht so ganz zurecht da immer wenn ich den slot öffnen will, die fehlermeldung das der mailslot schon existiert erscheint.
wenn ich den messenger dienst beende funzt es. Da ich aber nicht immer den messenger beenden willl wenn ich mein prog starte ist das etwas unpaktisch deshalb:
wie komm ich ohne die kompo in den mailslot?

SirThornberry 9. Apr 2005 07:23

Re: NetSend nachrichten per API abfangen
 
der messanger läuft über einen port. Wenn also der Service schon gestertet ist, so ist auch der entsprechende port offen damit nachrichten empfangen werden können und dementsprechend ist es logich das du nicht auf dem gleichen Port noch ein Programm öffnen kannst.

NikoMitDaMacht 9. Apr 2005 13:30

Re: NetSend nachrichten per API abfangen
 
Ok das klingt logisch.

Ich hab das jetzt ma so probiert

Delphi-Quellcode:
var
ServerName: string;
FHandle : THandle;
begin
  ServerName := '\\*\mailslot\messngr';

  FHandle := CreateFileA(
    @ServerName[1], GENERIC_WRITE, FILE_SHARE_READ, nil, OPEN_EXISTING,
    FILE_ATTRIBUTE_NORMAL or FILE_FLAG_NO_BUFFERING or FILE_FLAG_OVERLAPPED, 0);

  if FHandle = INVALID_HANDLE_VALUE then
  ShowMessage('Konnte Mailslot nicht öffen');
end;
Eigentlich ist das doch richtig so, oder ?
Was mach ich falsch denn da kommt immer "Konnte Mailslot nicht öffen"


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:59 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