Vb De Client Server Yapimi
-
Client/Server
Client
'*********************************************
'Ilk önce Formuzu olusturuyoruz ve üzerine
'1 TextBox, 2 Button, 1 label ve 1'de Winsock
'koyuyoruz. Daha sonra üzerine tiklayarak
'asagidaki gibi Kodlari giriyoruz...
'*********************************************
'Baglantiyi Kuracak olan Buttonumuzun kodlarini
'burda giriyoruz...
Private Sub Command1_Click()
'ikinci bir tiklamada Server ile baglantimizin
'kesilmesini sagliyoruz.
Winsock1.Close
'Burda Text1'e girilen IP nin belirttigimiz
'Port Numarasina baglanmasini deniyoruz...
'Ben burda Port numarasini 1982 diye koydum
'siz kafaniza göre istediginizi koyabilirsiniz.
Winsock1.Connect Text1.Text, 1982
End Sub
'Burda Not Defterimiz'i çalistiracak olan
'Buttonun kodlarini giriyoruz....
Private Sub Command2_Click()
'Çalistir'i basta bi String ifade olarak
'tanimliyoruz.
Dim Çalistir As String
've Çalistir'in Serverda neye karsilik
'gelecegini belirtiyoruz...
Çalistir = "NotDefteri"
'Daha sonra Çalistiri bir veri seklinde
'Servera yolluyoruz. Eger server'a bagliysak
'server bu yolladigimiz veriye cevap verecektir.
Winsock1.SendData Çalistir
End Sub
'Server'i kapatacagimiz Buttonun kodlarini
'giriyoruz...
Private Sub Command3_Click()
'Deminki gibi bir tanimlama yapiyoruz
'Bu sefer BaglantiKes diye bi tanimlama
'yapiyoruz, buda String tabiki...
Dim BaglantiKes As String
'BaglantiKes'in Server da neye karsilik
'geldigini belirtiyoruz.
BaglantiKes = "ServeriKapat"
'BaglantiKesi Server'a yolluyoruz...
Winsock1.SendData BaglantiKes
'Eger Server bu yolladigimiz veriye
'cevap verirse bunu bize bildirmesini
'istiyoruz ve baglantinin kesildigini
'Label1'e yazdiriyoruz.
Label1.Caption = "Baglanti Kesildi."
'Ben burda Formumuzun basligini da degistirip
'eski hali olan Client yapiyorum.
Me.Caption = "Client"
End Sub
'Client'imizin Server'a baglandigi an...
Private Sub Winsock1_Connect()
'Bunlar size gereksiz gelebilir ama titiz
'davranmak gerek. Ben Server'a baglandigimizda
'kolayca anlasilsin diye Label1'i Baglanti
'Kuruldu diye degistiriyorum...
Label1.Caption = "Server 'a Baglanti Kuruldu."
've tabi Formumuzun Basliginida Server'a
'baglandimiz anlasilacak sekilde degistiriyorum.
Me.Caption = "Client <-----> Server"
End Sub
Server
'************************************************
'Ilk olarak basit bir Form olusturuyoruz.
'Daha sonra Formumuza bir Winsock ekliyoruz.
'Ve üzerine tiklayip Kod Penceresinde asagidaki
'Kodlari giriyoruz...
'************************************************
'Server çalistirildiginda yapacaklarini
'burda giriyoruz...
Private Sub Form_Load()
'Client'de girdigimiz Port numarasini
'burda tanimliyip dinlemeye aliyoruz.
Winsock1.LocalPort = 1982
Winsock1.Listen
'Server Kabak gibi masaüstüne açilmasin
'diye Çalistirildiginda arka Planda
'çalismasini sagliyoruz.
Me.Hide
End Sub
Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
'istedigimizde biz Soketlerimizi bile kapariz. :-)
Winsock1.Close
Winsock1.Accept requestID
End Sub
'iste veri alisverisini burda yapacaz...
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
'Burda istedigimiz herseyi yapmasini
'söylüyoruz :-)
DoEvents
'Burda Client'tede yaptigimiz gibi
'gönderilen verileri almamiz için bi
'string ifade tanimliyoruz...
Dim Yollanan As String
'Winsock1'i gönderilen verileri almasi
'için çagiriyoruz.
Call Winsock1.GetData(Yollanan$, vbString)
DoEvents
'Client'te tanimladigimiz BaglantiKes'in
'burda ServeriKapata karsilik geldigini
'anliyoruz ve ServeriKapat'i da Yollanan
'olarak yani bir String olarak tanimliyoruz.
If Yollanan = "ServeriKapat" Then
'Client Server'a kapanacaksin dediginde
'Server Formumuzun kendisini kapatmasini
'istiyoruz, böylelikle Dinlenmekte olan
'1982'inci portumuzuda dinemeden aliyoruz...
Unload Me
'Evet Burda da Client'te Çalistir'in karsiligi
'olan NotDefterimiz'in Serverda ki karsiligi
'olan Yollanan olarak tanimliyoruz.
ElseIf Yollanan = "NotDefteri" Then
'Ve eger Client bize Çalistir diye bi veri
'yollarsa Server onun kendinde ki karsiligini
'bulup belirtilen görevinin yapilmasini sagliyor.
'Not Defterini çalistirmak için Shell komutunu
'kullaniyoruz. Ben Win2k kullandigimdan Not Defterinin
'dizinini WinNT olarak belirttim siz Windows olarak
'degistirebilirsiniz...
Shell "C:\WINNT\NOTEPAD.EXE"
End If
've son olarak açilan degerleri kapatiyoruz...
End Sub
gule gule Kullanin beyler -
(smileylan[http://www.resimload.com/141102/rp0_ddddd.bmp]smileylan)
sağol hacker hoca
Toplam Hit: 2466 Toplam Mesaj: 2
