Isi Jarkom
Isi Jarkom
BAB I PENDAHULUAN
1.1 Latar belakang Jaringan komputer secara sederhana dapat diartikan komputer komputer yang saling tersambung satu sama lain. Lingkupnya bisa dari yang kecil misalnya saja suatu komputer terhubung dengan komputer yang lain dan bisa berbagi file. Intinya kita dapat mengakses komputer lain dalam suatu jaringan. Selain untuk tukar menukar informasi, kita bisa memanfaatkan jaringan untuk mengendalikan komputer lain melalui komputer kita. Dalam laporan ini dijelaskan langkah langkah pembuatan aplikasi remote komputer secara sederhana dengan menggunakan bahasa pemrograman Visual Basic 6 ( VB 6.0 ). Dengan menggunakan aplikasi file transfer melalui FTP internet ini kita bisa
1.2 Tujuan Tujuan pembuatan aplikasi ini adalah untuk lebih memahami konsep jaringan dengan menggunakan visual basic 6, memahami lebih dalam konsep jaringan dengan menggunakan socket serta membuat program clien server sederhana.
BAB II PEMBAHASAN
2.1 Source Code Dalam pembuatan Network Monitoring File, kita menggunakan 1aplikasi yang di mana tiap bagian tersebut memiliki sebuah form dengan source code yang sama. Setiap form mempunyai bagian bagian yang saling terhubung satu sama lain.
Berikut di bawah ini adalah source code Aplikasinya
fi3_username As Long End Type Private Const PERM_FILE_READ = &H1 Private Const PERM_FILE_WRITE = &H2 Private access Private Declare Function NetFileEnum Lib "Netapi32" _ (ByVal servername As Long, _ ByVal basepath As Long, _ ByVal username As Long, _ ByVal level As Long, _ bufptr As Long, _ ByVal prefmaxlen As Long, _ entriesread As Long, _ totalentries As Long, _ resume_handle As Long) As Long Private Declare Function NetApiBufferFree Lib Const PERM_FILE_CREATE = 'user has read access 'user has write access &H4 'user has create
"netapi32.dll" _ (ByVal Buffer As Long) As Long Private Declare Sub CopyMemory Lib "kernel32" _ Alias "RtlMoveMemory" _ (pTo As Any, uFrom As Any, _ ByVal lSize As Long) Private Declare Function lstrlenW Lib "kernel32" _ (ByVal lpString As Long) As Long Private Declare Function SendMessage Lib "user32" _ Alias "SendMessageA" _ (ByVal hwnd As Long, _ ByVal wMsg As Long, _
Private Sub Form_Load() ReDim TabArray(0 To 1) As Long TabArray(0) = 68 TabArray(1) = 149 Call SendMessage(List1.hwnd, LB_SETTABSTOPS, 0&, ByVal 0&) Call TabArray(0)) Command1.Caption = "NetFileEnum" Text1 = GetCom End Sub SendMessage(List1.hwnd, LB_SETTABSTOPS, 2&,
Private Sub Command1_Click() Dim numconnections As Long Dim sServer As String sServer = Text1 & vbNullString numconnections = GetFileConnections(sServer) Label1.Caption machine " & sServer End Sub = numconnections & " connections on
Private Function GetFileConnections(sServer As String) As Long Dim bufptr Dim dwServer Dim dwEntriesread Dim dwTotalentries Dim dwResumehandle Dim dwDomain Dim fi3 Dim success Dim nStructSize Dim cnt Dim tmp As Long As Long As Long As Long As Long As Long As FILE_INFO_3 As Long As Long As Long As String
Const NERR_SUCCESS As Long = 0& Const ERROR_MORE_DATA As Long = 234& If Len(sServer) = 0 Then sServer = vbNullString Else sServer = "\\" & sServer & vbNullString End If dwServer = StrPtr(sServer) nStructSize = LenB(fi3) success = NetFileEnum(dwServer, _ 0&, _ 0&, _ 3, _ bufptr, _ MAX_PREFERRED_LENGTH, _ dwEntriesread, _
dwTotalentries, _ dwResumehandle) If success = NERR_SUCCESS And _ success <> ERROR_MORE_DATA Then For cnt = 0 To dwEntriesread - 1 CopyMemory fi3, ByVal bufptr + (nStructSize * cnt), nStructSize List1.AddItem GetPointerToByteStringW(fi3.fi3_username) & vbTab & _ GetPermissionType(fi3.fi3_permission s) & vbTab & _ GetPointerToByteStringW(fi3.fi3_path name) Next GetFileConnections = dwEntriesread End If Call NetApiBufferFree(bufptr)
End Function
Public
Function
GetPointerToByteStringW(ByVal
dwData
As
If dwData <> 0 Then tmplen = lstrlenW(dwData) * 2 If tmplen <> 0 Then ReDim tmp(0 To (tmplen - 1)) As Byte CopyMemory tmp(0), ByVal dwData, tmplen GetPointerToByteStringW = tmp End If End If End Function
Private
Function
GetPermissionType(ByVal
dwPermissions
As
Long) As String Dim tmp As String If dwPermissions And PERM_FILE_READ Then tmp = "read " If dwPermissions And PERM_FILE_WRITE Then tmp = tmp & "write " If dwPermissions And PERM_FILE_CREATE Then tmp = tmp & "create " GetPermissionType = tmp & "access" End Function Function GetCom() As String Dim dwLen As Long
Dim strString As String dwLen = MAX_COMPUTERNAME_LENGTH + 1 strString = String(dwLen, "X") GetComputerName strString, dwLen strString = Left(strString, dwLen) GetCom = strString End Function
Private Const MAX_COMPUTERNAME_LENGTH As Long = 31 Private Declare Function GetComputerName Lib "kernel32" Alias "GetComputerNameA" (ByVal lpBuffer As String, nSize As Long) As Long
Private Const PERM_FILE_READ = &H1 access Private Const PERM_FILE_WRITE = &H2 access
Private Declare Function NetFileEnum Lib "Netapi32" _ (ByVal servername As Long, _ ByVal basepath As Long, _ ByVal username As Long, _ ByVal level As Long, _ bufptr As Long, _ ByVal prefmaxlen As Long, _ entriesread As Long, _ totalentries As Long, _ resume_handle As Long) As Long
Private Declare Function NetApiBufferFree Lib "netapi32.dll" _ (ByVal Buffer As Long) As Long
Private Declare Function lstrlenW Lib "kernel32" _ (ByVal lpString As Long) As Long
Private Declare Function SendMessage Lib "user32" _ Alias "SendMessageA" _ (ByVal hwnd As Long, _ ByVal wMsg As Long, _ ByVal wParam As Long, _ lParam As Any) As Long
Penjelasan : Ketika Aplikasi ini dijalankan maka aplikasi ini akan mencoba melakukan koneksi antara server dengan user..
Fungsi untuk mengatur form pada tampilan aplikasi nantinya
Call SendMessage(List1.hwnd, LB_SETTABSTOPS, 0&, ByVal 0&) Call SendMessage(List1.hwnd, LB_SETTABSTOPS, 2&, TabArray(0))
End Sub
Dim numconnections As Long Dim sServer As String sServer = Text1 & vbNullString numconnections = GetFileConnections(sServer)
End Sub
GetFileConnections(sServer
As
Dim bufptr Dim dwServer Dim dwEntriesread Dim dwTotalentries Dim dwResumehandle Dim dwDomain Dim fi3 Dim success Dim nStructSize Dim cnt Dim tmp
As Long As Long As Long As Long As Long As Long As FILE_INFO_3 As Long As Long As Long As String
If Len(sServer) = 0 Then sServer = vbNullString Else sServer = "\\" & sServer & vbNullString End If
ByVal
bufptr
List1.AddItem GetPointerToByteStringW(fi3.fi3_username) & vbTab & _ GetPermissionType(fi3.fi3_p ermissions) & vbTab & _ GetPointerToByteStringW(fi3 .fi3_pathname)
Next
GetFileConnections = dwEntriesread
End If
Call NetApiBufferFree(bufptr)
End Function
tmplen = lstrlenW(dwData) * 2
ReDim tmp(0 To (tmplen - 1)) As Byte CopyMemory tmp(0), ByVal dwData, tmplen GetPointerToByteStringW = tmp
End If
End If
End Function
If dwPermissions And PERM_FILE_READ Then tmp = "read " If dwPermissions And PERM_FILE_WRITE Then tmp = tmp & "write "
End Function
Penjelasan : Ini adalah source code untuk mendapatkan data pada computer tersebut
BAB III PENUTUP 3.1 Kesimpulan Dari pembuatan aplikasi Network Monitoring File diatas dapat di tarik suatu kesimpulan yaitu :
1. Hasil hasil yang diperoleh dalam pembuatan aplikasi Network
Monitoring File dipahami mengenai beberapa hal antara lain : Memahami kegunaan jaringan computer dalam pertukaran
Memahami dan mampu mengaplikasikan konsep jaringan Memahami dan mampu membuat sebuah aplikasi jaringan secara
sederhana.
2. Hukum hukum serta teori teori yang ada didalam jaringan computer,
khususnya yang berhubungan dengan praktikum ini adalah benar. Kebenaran teori teori ini akan lebih jelas dengan tingkat ketelitian percobaan yang tinggi.
Untuk menghasilkan hasil aplikasi program yang akurat, perlu diperhatikan mengenai : 1. Ketelitian dalam penggunaan bahasa pemrogramannya ( penguasaan bahasa pemrograman dalam hal ini adalah bahasa pemrograman visual basic 6 ).