Einzelnen Beitrag anzeigen

DarkPressure

Registriert seit: 24. Mär 2006
28 Beiträge
 
Delphi 2006 Architect
 
#7

Re: Kommunikation zwischen (injected) DLL und Programm

  Alt 23. Apr 2006, 14:10
Ich krieg die Krise mit den Pipes
Im Client steht jetzt
Delphi-Quellcode:
procedure TForm1.NPipeServer1IncomingData(Sender: TObject; Data: TMemoryStream;
  var Reply: TMemoryStream);
begin
  Memo1.Lines.LoadfromStream(Data);
end;
Und wirds in der DLL initialisiert: (Beispiel)
Delphi-Quellcode:
   begin
   PipeClient := TNPipeClient.Create(Nil);
   PipeClient.PipeName := 'MyPipe';
   PipeClient.SendTimeout := 500;
   WMSend('Recv', 999);
   end;
Delphi-Quellcode:
procedure WMSend(Action: string; Socket: Integer); stdcall;
var
  MS : TMemoryStream;
  Senddata: string;
begin
  MS:=TMemoryStream.Create;
  Senddata := Action + IntToSTR(Socket);
  MS.WriteBuffer(Pointer(Senddata)^, Length(Senddata));
  PipeClient.SendBuffer(MS);
  MS.Free;
end;
Ich bin wirklich am verzweifeln
  Mit Zitat antworten Zitat