Hallo Ihr Lieben!!!
Ich hab da mal ne frage
Und zwar, ich hab folgenden Quelltext im Internet gefunden:
Delphi-Quellcode:
function SendMessage(const Emetteur, Destinataire, LeMessage : string) : Boolean;
var
HWNDSlot : THandle;
Buffer : String;
lpNumberOfBytesWritten : Cardinal;
begin
{ Init }
Result := false;
lpNumberOfBytesWritten := 0;
{ Création du MailSlot }
HWNDSlot := CreateFile( PChar('\\' + Destinataire + '\MAILSLOT\MESSNGR'),
GENERIC_WRITE, FILE_SHARE_READ, nil,
OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0 );
{ Définition de la trame }
Buffer := Emetteur + #0 + Destinataire + #0 + LeMessage + #0;
try
result := ( HWNDSlot <> INVALID_HANDLE_VALUE );
if ( result ) then { Envoi }
result := WriteFile( HWNDSlot, PChar(Buffer)^, Length(Buffer), lpNumberOfBytesWritten, nil );
finally
CloseHandle( HWNDSlot );
end;
end;
So Damit kann ich jetzt eine Nachricht (wie NetSend) an einen PC schicken, und auch den Absender verändern.
Die Frage ist, was macht der Empfänger PC denn eigentlich mit der eingehenden Nachricht?
Kann man diese auch so umschreiben, dass der EmpfängerPC keine Nachricht mehr aufruft sondern ein Programm öffnet, das dann diese Message von windows ersetzt um dann auch einen Ablauf zu bekommen, den man auhc protokollieren kann.
Also im Prinzip möchte ich ein Programm auf einem PC im Netzwerk ausführen. ohne dass ich ein Programm auf diesem gestartet habe, das die ANchricht entgegennimmt (das einzige ist der Nachrichtendienst)
Ist das Möglich?
Kann ich den oberen QT umschreiben oder gibt's da ne andere lösung?
Viele Grüße
Und hoffentlich danke für zahlreiche Antworten
Joshi