Minggu, 05 Juni 2011

Program Scada menggunakan Winsock

11.  Buka program Visual Basic 6.0

  2.  Pilih “Standard EXE” pada form New Project


3. Buat tampilan Form Server seperti gambar berikut :


Keterangan:

TextBox

a.      Name           : Text1

b.      Name           : Text2

d.      Name           : Text3

e.       Name           : Text4



Shape

c.       Name           : Shape1

Fillcolor  : &H000000FF&

f.        Name           : Shape2

Fillcolor  : &H000000FF&



Command Button

g.      Name           : Command1

                       Command2

  4.  Masukkan script berikut pada form Server:

Dim data As String

Dim data1 As String

Dim data2 As String

Private intsockcnt As Integer



Private Sub Command1_Click()

     On Error GoTo Err

   

    Dim intcnt As Integer

    For intcnt = 1 To intsockcnt

        If Winsock1(intcnt).State = sckConnected Then Winsock1(intcnt).GetData data1

        Text1.Text = data1 & vbCrLf

        DoEvents

        Text2.Text = data2 & vbCrLf

    Next intcnt

    Exit Sub



Err:

    MsgBox "Error : " & Err.Description

 

End Sub





Private Sub Form_Load()

    On Error GoTo Err

    Winsock1(0).Close

    Winsock1(0).LocalPort = 250

    Winsock1(0).Listen

    Exit Sub

Err:

    MsgBox "Error : " & Err.Description, vbCritical

End Sub






Private Sub Winsock1_ConnectionRequest(Index As Integer, ByVal requestID As Long)

    intsockcnt = intsockcnt + 1

 

    Load Winsock1(intsockcnt)

    Winsock1(intsockcnt).Accept requestID

    Shape1.BackColor = &HC0C000 & vbCrLf

   

End Sub



Private Sub Winsock1_DataArrival(Index As Integer, ByVal bytesTotal As Long)



    Dim strdata As String

    Dim intcnt As Integer

   

    Winsock1(Index).GetData strdata, vbString

    Text1.Text = data1 & vbCrLf

    Text2.Text = data2 & vbCrLf

   

    For intcnt = 1 To intsockcnt

    If Winsock1(intcnt).State = sckConnected Then Winsock1(intcnt).SendData strdata

    End If

   

    Next intcnt



End Sub
 


 5. Buat pula tampilan Form Client seperti gambar dibawah:



Keterangan :

Textbox

a.       Name    : txInput

c.       Name    : txRH

d.      Name    : txPort


                                HScrollbar

b.      Name    : HScr1



Command Button

e.      Name    : command1



Option Button

f.        Name    : Option1

g.       Name    : Option2


Shape

h.      Name    : Shape1

Fillcolor : &H000000FF&

6. Masukkan script berikut pada form Client:


Dim data1 As String

Dim data2 As String

Dim data3 As String



Private Sub Command1_Click()

    On Error GoTo err



    Winsock1.Close

    Winsock1.RemoteHost = txRH.Text

    Winsock1.RemotePort = txPort.Text

    Winsock1.Connect

    Shape1.BackColor = &HC0C000

    Form1.Caption = "Anda terhubung ke Server"

    Exit Sub

err:

    MsgBox "Error : " & err.Description, vbCritical

End Sub



Private Sub Form_Load()

    HScr1.Enabled = False

End Sub



Private Sub HScr1_Change()

    txInput.Text = HScr1.Value

    data1 = HScr1.Value

End Sub



Private Sub HScr1_DragDrop(Source As Control, X As Single, Y As Single)

    HScr1_HScroll

End Sub



Private Sub HScr1_DragOver(Source As Control, X As Single, Y As Single, State As Integer)

    HScr1_HScroll

End Sub




Private Sub Option1_Click()

    txInput.Enabled = True

    HScr1.Enabled = True

    data2 = Option1.Caption

    End Sub

Private Sub Option2_Click()

    txInput.Enabled = False

    HScr1.Enabled = False

    data3 = Option1.Caption

    MsgBox "Status alat sedang rusak ...!!", vbInformation + vbOKOnly, "PrjClient"

End Sub



Private Sub HScr1_HScroll()

    Winsock1.SendData data1

    DoEvents

End Sub




Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)

    Dim data As String

    Winsock1.GetData data, vbString

    txInput = txInput & data & vbCrLf

End Sub

7. Selamat mencoba !! ~('-'~)(~'-')~