Tuesday, December 21, 2010

Basic Client - Server

Beberapa hari lalu ada teman yang menulis komentar pada postingan Remote Desktop - Pengontrol Komputer Orang Lain ,dia mendapat tugas untuk membuat aplikasi Client-Server yang fungsi aplikasi tersebut adalah untuk mengontrol Sistem Registry komputer target. Untuk memenuhi pertanyaan teman tersebut serta mengupdate Blog ini maka jawabannya saya tulis dalam bentuk postingan..
Langsung saja ini screenshot dan kodenya.


 Langkah Pembuatan Project
  1. Buat dua buah project, yaitu Project Client dan Project Server.
  2. Untuk Project Client terdiri atas 3 CommandButton, 1 Text untuk menampung IP Address komputer target (server), 1 label info koneksi  dan 1 Component Microsoft Winsock Control 6.0. Lebih jelasnya lihat gambar di atas.
  3. UntukProject Server cukup 1 label info dan 1 Component Microsoft Winsock Control 6.0.
Copy Paste Code dibawah ini pada form Project Client.

'panggil URL
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Private Const conSwNormal = 1

Private Sub ConnectToServer()
On Error Resume Next
        WscClient.Connect Text1.Text, 2010
End Sub
Private Sub DisConnectToServer()
        WscClient.Close
End Sub
Private Sub Command1_Click()
    If Command1.Caption = "Connect" Then
        ConnectToServer
    ElseIf Command1.Caption = "Disconnect" Then
        DisConnectToServer
        Command1.Caption = "Connect"
        Command2.Enabled = False
        Command3.Enabled = False
        lblInfo.Caption = "Belum Konek Server..."
    End If
End Sub


Private Sub Command2_Click()
   WscClient.SendData "enablereg"
End Sub

Private Sub Command3_Click()
    WscClient.SendData "disablereg"
End Sub

Private Sub Form_Load()
    WscClient.Protocol = sckTCPProtocol
End Sub

Private Sub Label1_Click()
ShellExecute hwnd, "open", "Http://vbasiccode.blogspot.com", vbNullString, vbNullString, conSwNormal

End Sub

Private Sub Label2_Click()
ShellExecute hwnd, "open", "http://vbasiccode.blogspot.com/2010/04/tutorial-ptc.html", vbNullString, vbNullString, conSwNormal
End Sub

Private Sub Label3_Click()
ShellExecute hwnd, "open", "http://www.facebook.com/OutOfStack", vbNullString, vbNullString, conSwNormal

End Sub

Private Sub WscClient_Close()
        Command1.Caption = "Connect"
        Command2.Enabled = False
        Command3.Enabled = False
        lblInfo.Caption = "Aplikasi Server Ditutup..."
End Sub

Private Sub WscClient_Connect()
    lblInfo.Caption = "Terkoneksi dengan Server"
    Command2.Enabled = True
    Command3.Enabled = True
    Command1.Caption = "Disconnect"
End Sub
Private Sub WscClient_DataArrival(ByVal bytesTotal As Long)
Dim date_primite As String
Dim Vector() As String
WscClient.GetData date_primite
Vector = Split(date_primite, "|")

Select Case Vector(0)

Case "laporan"
    MsgBox Vector(1)
End Select

End Sub


Copy Paste Code dibawah ini pada form Project Server.
Private Sub Form_Load()
    WskServer.LocalPort = 2010
    WskServer.Listen
End Sub


Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
        WskServer.Close
End Sub

Private Sub WskServer_Close()
    WskServer.Close
    WskServer.Listen
    lblInfo.Caption = "Koneksi ditutup Client..."
End Sub

Private Sub WskServer_ConnectionRequest(ByVal requestID As Long)
    WskServer.Close
    WskServer.Accept requestID
    lblInfo.Caption = "Terkoneksi dengan client..."
End Sub

Private Sub WskServer_DataArrival(ByVal bytesTotal As Long)
    Dim date_primite As String
    Dim Vector() As String
    Dim regrun
    Set regrun = CreateObject("WScript.Shell")
    WskServer.GetData date_primite
    Vector = Split(date_primite, "|")
    Select Case Vector(0)
    Case "disablereg"
        regrun.regwrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableRegistryTools", 1, "REG_DWORD"
        regrun.regwrite "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableRegistryTools", 1, "REG_DWORD"
        WskServer.SendData "laporan|" + "Laporan dari Server:""Registry Server tidak dapat dibuka."""
    Case "enablereg"
        regrun.regwrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableRegistryTools", 0, "REG_DWORD"
        regrun.regwrite "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableRegistryTools", 0, "REG_DWORD"
        WskServer.SendData "laporan|" + "Laporan dari Server: ""Registry Server sudah dapat dibuka kembali."""
    End Select

End Sub

Private Sub WskServer_Error(ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean)
    WskServer.Close
    WskServer.Listen
End Sub

Silahkan Download BasicRemoteDesktop.rar
Aplikasi dibuat di windows XP dan jika dijalankan di Windows 7 maka klik kanan dan jalankan aplikasi sebagai Administrator.
Semoga bermanfaat..Amin.

      21 comments:

      1. wah terimakasih banyak mas atas donasi ilmunya... hehehe
        sangat-sangat membantu sekali.,,.,
        semoga mas "VBasicCode" dapat balasan dari Tuhan YME amin.,.,.
        sekali lagi terimakasih banyak.,.,

        ReplyDelete
      2. Hehe..Sama-sama Mas "catatankecilku" semoga tugasnya kelar..sukses selalu..amin.

        ReplyDelete
      3. bagus bgd dah thx buat ilmunya mas...

        ReplyDelete
      4. Sama-sama Mas "Yana Yani".. Terimakasih Kembali..

        ReplyDelete
      5. sip....

        semoga berguna untuk kemajuan programmer indonesia...

        ReplyDelete
      6. Makasih Mas Hartoto.. Amin.
        Sukses selalu untuk Mas Har..

        ReplyDelete
      7. wah bermanfaat banget nih mas ilmunya..
        kebetulan saya masih smester 2 kuliah di jurusan T.I lagi belajar VB...
        semoga sukses selalu ya..di tunggu n jgn lupa di share ya mas ilmu2 yg lain...

        ReplyDelete
      8. Thanks Do'anya Mas Otomatis..
        Sama-sama semoga Mas juga sukses..Amin.

        ReplyDelete
      9. salam kenal bos... saya mohon bantuannya untuk program sederhana berbasis client - server... pake vb 6.0 dan database access atau sql server.. kalo bisa ada 2 aplikasinya yang 1 untuk jadi server dan 1 untuk clientnya... biar saya tau konsep dasar dari pemrograman client - server... tolong mas bos.... karena di internet susah untuk dapat... Tolong mas... saya butuh bantuannya... sebelumnya terima kasih untuk source2 nya....

        ReplyDelete
      10. Salam Kenal Mas. Kenalkan nama Saya Nurul. Saya mau nanya kenapa aplkasi yng saya bikin, saya install di komp.lain pada saat saya RUN tidak jalan kira2 apa masalahnya mas.. Database yang saya pake database SQL Server 2000. program tersebut saya mau jadikan sebagai client. dan saya ingin program tersebut terhubung dengan server. mohon bantuannya Mas. Makasih

        ReplyDelete
      11. Kok pass nya salah mulu ya mas.
        Private Sub Form_Load()
        WskServer.LocalPort = Terkoneksi = Server
        WskServer.Listen
        End Sub
        salah disitu terus jawab via email aja ya mas.

        >>muchlis.april@yahoo.co.id<<
        Trima kasih

        ReplyDelete
      12. mas bro jadi ini bisa hack koneksi orang dong..

        ReplyDelete
      13. Saya Gx Ada Microsoft Winsock Control 6.0 !
        Jadi Saya Harus Gimana ?

        ReplyDelete
      14. semoga digunakan untuk hal yang baik ehhehhehehe

        ReplyDelete
      15. Maap nih sebelumnya,, bisa ngga tolongin saya Membuat Program Mini Market dengan VB.. saya ada tugas sekolah ni.. terimakasih

        ReplyDelete
      16. mas, kalau program Database dgn client-server gmn yah. makasih?

        ReplyDelete
      17. Thanks VBasicCode ..... orang awam kaya Q jd taU dech..... hehehew

        ReplyDelete
      18. mas hartoto ada ym ka??? bole sharing tentang ilmu client server nya???? erimakasih sebelum nya...

        ReplyDelete
      19. mas tolong donk emailkan ke saya kalong.suckerface@gmail.com soalnya ziddu kena virus..
        terima kasih sebelumnya

        ReplyDelete
      20. Makasih Mas "VBasicCode" atas ilmnya ... pas bange saya lagi pengen buat aplikasi server/client vb6, moga aja saya cepet selesai ... Amin
        Sukses selalu buat Mas "VBasicCode"

        ReplyDelete
      21. mas kenapa... P
        rivate Sub Form_Load()
        WscClient.Protocol = sckTCPProtocol
        End Sub
        error ya? mohon pencerahannya

        ReplyDelete