Skocz do zawartości
maciko

Delphi P2p

Rekomendowane odpowiedzi

Piszę program do przesyłania plików między dwoma komputerami. Nie jednak jak zawrzeć połączenie między dwoma komputerami. Próbowałem użyć ClientSocket i ServerSocket ale nic z tego nie wyszło. Czy mógłby ktoś krok po kroku opisać jak trzzeba napisać procedure zawarcia połączenia??

 

Próbowałem coś takiego:

unit Unit1;interfaceuses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, StdCtrls, ScktComp;type  TForm1 = class(TForm)    Client: TClientSocket;    Server: TServerSocket;    Button1: TButton;    procedure Button1Click(Sender: TObject);    procedure FormCreate(Sender: TObject);    procedure FormClose(Sender: TObject; var Action: TCloseAction);    procedure ServerClientRead(Sender: TObject; Socket: TCustomWinSocket);  private    { Private declarations }  public    { Public declarations }  end;var  Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);beginClient.Port:=32167;Client.Host:='192.168.3.53'Client.Active:=true;CLient.Socket.SendText('DZIAŁA');Client.Active:=false;end;procedure TForm1.FormCreate(Sender: TObject);beginServer.Port := 32167;Server.Active:=true;end;procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);beginServer.Active:=false;end;procedure TForm1.ServerClientRead(Sender: TObject;  Socket: TCustomWinSocket);beginForm1.Caption := Server.Socket.ReceiveText;end;end.
Edytowane przez maciko

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

A jakies konkretne bledy ci wyrzuca? Porty na firewallach otwarte? I moze ten kod od przesylania tekstu, wrzuc w zdarzenie, wtedy masz pewnosc, ze Ci sie polaczyl, bo teraz nie wiadomo czy jest polaczony czy nie.

 

Oczywiscie domyslam sie, ze klient jest na tym IP odpalony i gotowy do pracy(Socket otwarty).

 

Po za tym, po co kilka razy otwierasz ten sam socket. Wystarczy raz. Nie zapominaj, ze socket musi byc caly czas otwarty, inaczej nie dotra do niego rzadne dane/nie wysle danych.

Edytowane przez piterus90

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

U siebie mam wyłączonego, nie wiem jak u kumpla, ale podobno wziął na zezwalanie.

 

P.S. Wyłączyliśmy z kumplem firewalle, próbowałem się połączyć też na zewnętrznym ip ale nic z tego.

Edytowane przez maciko

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Hmmm... z grubsza powinno sie laczyc... Sproboj moze port zmienic... Moze juz cos na nim siedzi, chociaz watpie, bo jakis egzotyczny, czyli nic na nim nie wisi.. Ale dla pewnosci :) Jeszcze mozesz sprobowac odpalic u siebie i clienta i serwera(czyli dwie aplikacje) i probowac sie wpiac na 127.0.0.1 . Jak podziala, znaczy ze cos u kumpla, jak nie to u ciebie albo u obydwu :]

 

Pozdrawiam, piterus

 

PS. Jak cos, to pisz na moje gg: 2448962, moze cos mi sie uda jeszcze wykombinowac

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...