Cara Mengatasi wireless atau Wifi pada Laptop yang Error atau Rusak - Saya pernah Mengalami Kejadian ini yaitu wireless pada laptop saya tiba-tiba Tidak berfungsi atau Turn Off padahal saya masih mengaksess atau beraktivitas di dengan internet, setelah itu saya panik dan lekas mencari solusinya dan mencari pada mesin pencarian google Setelah di telusuri ternyata wireless pada laptop saya
Cara Mengatasi wireless atau Wifi pada Laptop yang di Silang Merah
Free Download APK android
Free download APK android .
Banyak situs buat download android. saya cuma share aja.
SEMOGA ANDA SENANG!
Banyak situs buat download android. saya cuma share aja.
SEMOGA ANDA SENANG!
1. 1mobile
1mobile adalah salah satu situs terbaik untuk aplikasi Android. Situs ini telah ditempatkan pada posisi pertama ditinjau dari forum dan mesin pencari, memiliki klik halaman sekitar 27.615 per hari. Situs ini dikategorikan efisien dengan berbagai bagian seperti Editor memilih aplikasi, rating terbaik dan aplikasi terbaru yang ditambahkan ke database.
2. Approb
Ketika saya berbicara tentang download aplikasi Android gratis, bagaimana saya bisa mengabaikan Approb, situs ini memiliki kekayaan berharga dalam mesin pencari dengan Android Download Gratis. Dalam daftar ini, Approb mendapat tempat kedua dengan 20.473 hits per hari. Selain database besar bebas dari aplikasi Android, situs ini juga menyediakan aplikasi gratis teratas untuk perangkat lain seperti iPhone, iPad, dengan bagian tambahan tentang bagaimana menggunakan atau menginstal mereka.
Website lain atas untuk Download Aplikasi Android adalah Android freeware. Situs peringkat tinggi untuk kata kunci kata, yang memiliki lebih 24.000 penggemar di situs jaringan sosial, ini database aplikasi android bebas harus diperiksa. Situs ini juga menyediakan link ke situs puncaknya afiliasi, yang juga menyediakan aplikasi gratis untuk berbagai platform seperti BlackBerry, Symbian dll Lebih dari ini, situs ini memiliki klik halaman 17.141 per hari, yang membuatnya menjadi salah satu situs favorit teratas untuk yang kompetitif kata kunci, dan 3 dalam daftar ini.
4. Androidapps
Ketika saya berpikir tentang sebuah situs yang dirancang atas, diatur dengan baik dan memiliki struktur ramah untuk setiap kriteria browsing, Androidapps ada di sini. Dengan telah dikategorikan dengan baik format gratis aplikasi android tersedia, tempat situs ini dalam peringkat tinggi di mesin pencari dengan lebih dari 15.712 klik halaman per hari.
Menjadi salah satu situs paling cepat dikunjungi untuk download gratis aplikasi android terbaik, situs ini mendapatkan popularitas sebagai mesin pencarinya catatan menunjukkan. Situs ini memiliki sekitar 12.855 hits per hari.
6. Playandroid
Playandroid adalah situs-6 dalam daftar ini, dengan 10.951 klik halaman setiap hari. Situs ini dirancang dingin, menyediakan aplikasi dikategorikan terbaik untuk download gratis dengan aplikasi dibayar juga. Dengan jumlah besar aplikasi maupun pengunjung terdaftar, situs ini adalah salah satu portal favorit untuk download aplikasi.
Dengan desain yang sangat bagus, memiliki database besar gratis aplikasi dalam hampir setiap kategori, situs ini adalah favorit saya. Situs ini peringkat tinggi untuk kata kunci terkait. Selain itu, situs ini juga menyediakan blog dan forum, sehingga fans online dapat mendapatkan saran yang berharga mengenai hal apapun. Situs ini peringkat baik, bahkan tinggi dengan lebih dari 6.666 pengunjung setiap hari.
8. Appsapk
Sebuah situs hanya dirancang untuk juga dikategorikan aplikasi download android, gratis. Situs ini menyediakan antarmuka yang sederhana, bersih dan mudah bagi penggunanya. Memiliki sekitar 2.666 hits per hari, situs ini peringkat tinggi di search engine, serta dalam benak pecinta android aplikasi.
Situs lain atas untuk free download aplikasi android, androidsoftwaredownload. Situs ini terdiri dari kategori atas para penggemar android ingin men-download aplikasi dari. Situs ini memiliki tampilan halaman harian 524, dan tempat di posisi 9 dalam daftar ini.
10. Appdoll
Situs terakhir, namun tidak sedikit dari daftar ini adalah appdoll. Dengan desain yang sederhana & bersih, setiap aplikasi memiliki link download di depannya. Situs ini menunjukkan kategori atas dengan aplikasi download teratas di masing-masing, label sebagai Aplikasi Feature, layak untuk mengunjungi dan menikmati hal-hal android, semua gratis.
Masih ada niih. :D
ini beberapa link situs yang menyediakan APK android. semoga bisa membantu kawan.
1. http://androidfullapk.blogspot.com/
2. http://android.mob.org/
3. http://www.apkfullapps.com/
4. http://androidapkappsfree.com/
5. http://arinanda.nazuka.net/2012/12/next-launcher-v1-11-full-android-apk/
6. http://www.androiddrawer.com/
ini beberapa link situs yang menyediakan APK android. semoga bisa membantu kawan.
1. http://androidfullapk.blogspot.com/
2. http://android.mob.org/
3. http://www.apkfullapps.com/
4. http://androidapkappsfree.com/
5. http://arinanda.nazuka.net/2012/12/next-launcher-v1-11-full-android-apk/
6. http://www.androiddrawer.com/
Antivirus Lokal Indonesia 2013
SixtazAv R2.0.1
SixtazAv adalah sebuah software Antivirus karya murid SMAN 6 Tasikmalaya.
dalam versi ini software ini mampu mendeteksi virus - virus lokal, dan sebagian virus import
Fitur : 1. GUI (Tampilan) diperbaiki
2. Minimize Scan
3. Full Scan
4. Login Password saat menjalankan
5. Scan USB otomatis
6. RTP yang disempurnakan
7. Penambahan database
screen shoot
1.
2. Minimize Scan :
Download Here
membuat antivirus sederhana menggunakan VB6.0
Selamat Pagi (karena updatenya pagi pagi).
Kali ini saya (Wildan Hilmi) akan memposting bagaimana cara membuat antivirus menggunakan Visual Basic 6 atau disebut juga VB6. Ada yang gak tau apa itu antivirus ? Antivirus adalah suatu program yang diprogram untuk menghapus virus yang ada dalam suatu gadget (walah formal amat ya??). Pengen bias?
Oke tanpa basa – basi lagi yuk kita bikin. :D
Ada beberapa hal yang harus anda siapkan.
1. Komputer / Laptop (Jelas lah tanpa ini mana bisa?)
2. Software Visual Basic 6.0 (harus Visual basic 6 ya! Kalo yang versi lain beda lagi code nya) tanpa software ini terus pake apa?
3. Segelas kemauan dan sepiring semangat
4. Juga jangan lupa persiapkan mental dan fisik anda. (Kalo gak kuat, lambaikan tangan) hehehe.. :D
5. Jangan lupa cemilan sama semua album Linkin Park (biar gak jenuh)
Oke langsung saja ya!
Pertama, nyalakan computer (ya iya lah masa nyalain kompor sih?)
setelah nyala, buka Visual Basic 6.0. Caranya : Klik Start menu è All Programs è Microsoft Visual Basic 6.0 è Pilih lagi deh Microsoft Visual Basic 6.0
setelah nyala, buka Visual Basic 6.0. Caranya : Klik Start menu è All Programs è Microsoft Visual Basic 6.0 è Pilih lagi deh Microsoft Visual Basic 6.0
Screen Shot :
(jadi malu ane. Ketauan deh masih pake win XP) :D
Jika sudah terbuka, maka akan muncul tampilan ini
Pilih Standard Exe (open)
muncul deh tampilan seperti ini
muncul deh tampilan seperti ini
disitu, ada beberapa control box (yang disebelah kiri tuh). Sekarang saatnya mendesain.
Beri nama form tersebut : frmUtama
1. Setelah form selesai di rubah namanya tambahkan component Mscomctl.Ocx dengan cara
Klik Project -> Components -> Microsoft Windows Common Controls 6.0 -> lalu klik OK
2.Setelah component sukses di tambahkan langkah selanjutnya adalah menambah Command Button,Textbox,Listview,Picture Box (Sengaja saya desain warnanya biar sama kayak di keterangan)
disini saya menggunakan desain yang sangat sederhana,desain bisa anda rubah sendiri sesuai kreatifitas anda ^^
- Tambahkan Listview kedalam form dan beri nama lvScan
yg warna biru muda adalah listview yang telah di tambahkan ke dalam form.
setelah itu setting listview dengan cara
Klik Listview -> Disebelah kanan bawah ada kotak properties -> Custom
Lalu pada tab Column Headers klik insert column
- Column 1 beri nama : Virus Name
- Column 2 beri nama : Path
- Column 3 beri nama : Checksum Virus
- Column 4 beri nama : Status Virus
lalu klik Ok
Tambahkan picture box buat picture box itu sekecil mungkin dan beri nama sicon
Setting :
Appearance : Flat
Auto Redraw : True
Border Style : None
Visible : False
Tambahkan Textbox ke dalam form dengan nama txtPath
Setting :
Appearance : Flat
Border Style : None
Tambahkan Command Button dengan nama cmdBrowse di samping Textbox yang telah di buat tadi
Setting :
Caption : ...
Masukan Code ini ke dalam cmdBrowse
Dim Pathnya As String
Pathnya = ""
Pathnya = BrowseFolder("Pilih folder yang akan di Scan:", Me)
If Pathnya <> "" Then
txtPath.Text = Pathnya
End If
Code di atas berfungsi untuk membuka kotak dialog yang berisi path" yang ada di dalam komputer lalu mencetaknya ke dalam textbox yang bernama txtPathPathnya = ""
Pathnya = BrowseFolder("Pilih folder yang akan di Scan:", Me)
If Pathnya <> "" Then
txtPath.Text = Pathnya
End If
Tambahkan label dengan nama default
Setting :
Caption : Dir Scanned
Tambahkan label dengan nama lblDirScan
Setting :
Caption : 0
Tambahkan label dengan nama default
Setting :
Caption : Detected
Tambahkan label dengan nama lblFileDet
Setting :
Caption : 0
Tambahkan label dengan nama default
Setting :
Caption : File Scanned
Tambahkan label dengan nama lblFileScan
Setting :
Caption : 0
Tambahkan Textbox dengan nama txtFileScan
Setting :
Multiline : True
Scroll Bar : 2-Vertical
Tambahkan Command Button dengan nama cmdScan
Setting :
Caption : &Scan
If cmdScan.Caption = "Scan" Then
Pathnya = txtPath.Text
If Mid(Pathnya, 2, 1) <> ":" Or Pathnya = "" Then
MsgBox "Direktori Tidak Ditemukan", vbCritical, "Error"
Exit Sub
Else
lvScan.Enabled = False
cmdEnable False, False, False
clear_log
cmdScan.Caption = "Stop"
StopScan = False
FindFilesEx txtPath.Text, CBool(chkSubDir.Value)
MsgBox "Scan finished !" & vbNewLine & vbNewLine & "Total Dir Scanned = " & lblDirScan.Caption & _
vbNewLine & "Total File Scanned = " & lblFileScan.Caption & vbNewLine & "Total File Detected = " & lblFileDet.Caption, vbInformation, "Finish"
If lblFileDet.Caption <> "0" Then
cmdEnable True, True, True
Else
cmdEnable False, False, True
End If
lvScan.Enabled = True
cmdScan.Caption = "Scan"
End If
Else
cmdScan.Caption = "Scan"
StopScan = True
End If
fungsi kode di atas adalah untuk memulai scan pada antivirusPathnya = txtPath.Text
If Mid(Pathnya, 2, 1) <> ":" Or Pathnya = "" Then
MsgBox "Direktori Tidak Ditemukan", vbCritical, "Error"
Exit Sub
Else
lvScan.Enabled = False
cmdEnable False, False, False
clear_log
cmdScan.Caption = "Stop"
StopScan = False
FindFilesEx txtPath.Text, CBool(chkSubDir.Value)
MsgBox "Scan finished !" & vbNewLine & vbNewLine & "Total Dir Scanned = " & lblDirScan.Caption & _
vbNewLine & "Total File Scanned = " & lblFileScan.Caption & vbNewLine & "Total File Detected = " & lblFileDet.Caption, vbInformation, "Finish"
If lblFileDet.Caption <> "0" Then
cmdEnable True, True, True
Else
cmdEnable False, False, True
End If
lvScan.Enabled = True
cmdScan.Caption = "Scan"
End If
Else
cmdScan.Caption = "Scan"
StopScan = True
End If
Tambahkan Command Button dengan nama cmdAction
Setting :
Caption : &Delete
Tambahkan Command Button dengan nama cmdAction
Setting :
Caption : &Quarantine
Tambahkan Command Button dengan nama cmdViewQ
Setting :
Caption : &View Quarantine File
Tambahkan Command Button dengan nama cmdAction
Setting :
Caption : &Delete
Tambahkan kode ini di dalamnya
Dim DftrFile As String
DftrFile = GetSelected(lvScan)
If DftrFile = "" Then
MsgBox "No Detected File(s) Selected", vbCritical, ""
Exit Sub
End If
Select Case Index
Case 0
clean = Action(DftrFile, lvScan, "D")
MsgBox clean & " File(s) has been deleted"
Case 1
clean = Action(DftrFile, lvScan, "Q")
MsgBox clean & " File(s) has been quarantine"
End Select
Fungsi di atas adalah fungsi untuk menghapus/mengkarantina file yang terdeteksiDftrFile = GetSelected(lvScan)
If DftrFile = "" Then
MsgBox "No Detected File(s) Selected", vbCritical, ""
Exit Sub
End If
Select Case Index
Case 0
clean = Action(DftrFile, lvScan, "D")
MsgBox clean & " File(s) has been deleted"
Case 1
clean = Action(DftrFile, lvScan, "Q")
MsgBox clean & " File(s) has been quarantine"
End Select
Tambahkan Command Button dengan nama cmdAction
Setting :
Caption : &Quarantine
Tambahkan Command Button dengan nama cmdViewQ
Setting :
Caption : &View Quarantine File
Lalu masukan code ini ke dalamnya
frmQuarantine.Show , Me
frmUtama.Enabled = False
Code di atas berfungsi untuk memunculkan form quarantine dan meng enabled form utamafrmUtama.Enabled = False
nah selesai untuk memasukan control ke dalam formnya
lalu klik kanan pada form masukan kode di bawah ini
Private Sub lvScan_ItemCheck(ByVal Item As MSComctlLib.ListItem)
UnSelect lvScan, "Di Karantina"
UnSelect lvScan, "Di Hapus"
End Sub
Private Function cmdEnable(hapus As Boolean, Quarantine As Boolean, openQuarantine As Boolean)
cmdAction(0).Enabled = hapus
cmdAction(1).Enabled = Quarantine
cmdViewQ.Enabled = openQuarantine
End Function
Private Function clear_log()
lblDirScan.Caption = 0
lblFileScan.Caption = 0
lblFileDet.Caption = 0
lvScan.ListItems.Clear
jumlahDir = 0
jumlahFile = 0
jumlahVirus = 0
End Function
UnSelect lvScan, "Di Karantina"
UnSelect lvScan, "Di Hapus"
End Sub
Private Function cmdEnable(hapus As Boolean, Quarantine As Boolean, openQuarantine As Boolean)
cmdAction(0).Enabled = hapus
cmdAction(1).Enabled = Quarantine
cmdViewQ.Enabled = openQuarantine
End Function
Private Function clear_log()
lblDirScan.Caption = 0
lblFileScan.Caption = 0
lblFileDet.Caption = 0
lvScan.ListItems.Clear
jumlahDir = 0
jumlahFile = 0
jumlahVirus = 0
End Function
On Error Resume Next
MkDir "Quarantine"
BuildDatabase
Lalu buatlah 1 module dengan nama modAPIMkDir "Quarantine"
BuildDatabase
Lalu tambahkan code di bawah ini
Public Declare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long
Public Declare Function FindNextFile Lib "kernel32" Alias "FindNextFileA" (ByVal hFindFile As Long, lpFindFileData As WIN32_FIND_DATA) As Long
Public Declare Function FindClose Lib "kernel32" (ByVal hFindFile As Long) As Long
Public Declare Function PathIsDirectory Lib "shlwapi.dll" Alias "PathIsDirectoryA" (ByVal pszPath As String) As Long
Public Declare Function CopyFile Lib "kernel32.dll" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long
Public Declare Function MoveFile Lib "kernel32.dll" Alias "MoveFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String) As Long
Public Declare Function DeleteFile Lib "kernel32" Alias "DeleteFileA" (ByVal lpFileName As String) As Long
Public Declare Function PathFileExists Lib "shlwapi.dll" Alias "PathFileExistsA" (ByVal pszPath As String) As Long
Public Declare Function GetSystemDirectory Lib "kernel32.dll" Alias "GetSystemDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long
Public Declare Function GetWindowsDirectory Lib "kernel32.dll" Alias "GetWindowsDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long
Public Declare Function SHGetPathFromIDList Lib "shell32.dll" Alias "SHGetPathFromIDListA" (ByVal pidl As Long, ByVal pszPath As String) As Long
Public Declare Function SHBrowseForFolder Lib "shell32.dll" Alias "SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) As Long
Private Declare Function RealizePalette Lib "gdi32" (ByVal hDC As Long) As Long
Public Declare Function CreateFile Lib "kernel32" Alias "CreateFileA" (ByVal lpFileName As String, ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, lpSecurityAttributes As Any, ByVal dwCreationDisposition As Long, ByVal dwFlagsAndAttributes As Long, ByVal hTemplateFile As Long) As Long
Public Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Public Declare Function GetFileSize Lib "kernel32" (ByVal hFile As Long, lpFileSizeHigh As Long) As Long
Public Declare Function VirtualAlloc Lib "kernel32" (lpAddress As Any, ByVal dwSize As Long, ByVal flAllocationType As Long, ByVal flProtect As Long) As Long
Public Declare Function ReadFile Lib "kernel32" (ByVal hFile As Long, lpBuffer As Any, ByVal nNumberOfBytesToRead As Long, lpNumberOfBytesRead As Long, lpOverlapped As Any) As Long
Public Declare Function WriteFile Lib "kernel32" (ByVal hFile As Long, lpBuffer As Any, ByVal nNumberOfBytesToWrite As Long, lpNumberOfBytesWritten As Long, lpOverlapped As Any) As Long
Public Declare Function SetFilePointer Lib "kernel32" (ByVal hFile As Long, ByVal lDistanceToMove As Long, lpDistanceToMoveHigh As Long, ByVal dwMoveMethod As Long) As Long
Public Declare Function SetEndOfFile Lib "kernel32" (ByVal hFile As Long) As Long
Public Const GENERIC_READ = &H80000000
Public Const GENERIC_WRITE = &H40000000
Public Const FILE_SHARE_READ = &H1
Public Const OPEN_EXISTING = 3
Public Const FILE_ATTRIBUTE_NORMAL = &H80
Public Const INVALID_HANDLE_VALUE = -1
Public Const FILE_END = 2
Public Const FILE_BEGIN = 0
Public Const FILE_CURRENT = 1
Public Const LWA_COLORKEY = &H1
Public Const GWL_EXSTYLE = (-20)
Public Const WS_EX_LAYERED = &H80000
Public Const MAX_PATH = 260
Public Const SW_SHOWNORMAL = 1
Public Type FileTime
dwLowDateTime As Long
dwHighDateTime As Long
End Type
Public Type WIN32_FIND_DATA
dwFileAttributes As Long
ftCreationTime As FileTime
ftLastAccessTime As FileTime
ftLastWriteTime As FileTime
nFileSizeHigh As Long
nFileSizeLow As Long
dwReserved0 As Long
dwReserved1 As Long
cFileName As String * MAX_PATH
cAlternate As String * 14
End Type
Type BROWSEINFO
hOwner As Long
pidlRoot As Long
pszDisplayName As String
lpszTitle As String
ulFlags As Long
lpfn As Long
lParam As Long
iImage As Long
End Type
'untuk browse folder
Public Function BrowseFolder(ByVal aTitle As String, ByVal aForm As Form) As String
Dim bInfo As BROWSEINFO
Dim rtn&, pidl&, path$, pos%
Dim BrowsePath As String
bInfo.hOwner = aForm.hWnd
bInfo.lpszTitle = aTitle
bInfo.ulFlags = &H1
pidl& = SHBrowseForFolder(bInfo)
path = Space(512)
t = SHGetPathFromIDList(ByVal pidl&, ByVal path)
pos% = InStr(path$, Chr$(0))
BrowseFolder = Left(path$, pos - 1)
If Right$(Browse, 1) = "\" Then
BrowseFolder = BrowseFolder
Else
BrowseFolder = BrowseFolder + "\"
End If
If Right(BrowseFolder, 2) = "\\" Then BrowseFolder = Left(BrowseFolder, Len(BrowseFolder) - 1)
If BrowseFolder = "\" Then BrowseFolder = ""
End Function
Public Function StripNulls(ByVal OriginalStr As String) As String
If (InStr(OriginalStr, Chr$(0)) > 0) Then
OriginalStr = Left$(OriginalStr, InStr(OriginalStr, Chr(0)) - 1)
End If
StripNulls = OriginalStr
End Function
'fungsi untuk menentukan file script atau bukan
Public Function IsScript(Filename As String) As Boolean
IsScript = False
ext = Split("|vbs|vbe", "|")
For i = 1 To UBound(ext)
If LCase(Right(Filename, 3)) = LCase(ext(i)) Then IsScript = True
Next
End Function
Code di atas adalah Fungsi API yang di butuhkan untuk antivirusPublic Declare Function FindNextFile Lib "kernel32" Alias "FindNextFileA" (ByVal hFindFile As Long, lpFindFileData As WIN32_FIND_DATA) As Long
Public Declare Function FindClose Lib "kernel32" (ByVal hFindFile As Long) As Long
Public Declare Function PathIsDirectory Lib "shlwapi.dll" Alias "PathIsDirectoryA" (ByVal pszPath As String) As Long
Public Declare Function CopyFile Lib "kernel32.dll" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long
Public Declare Function MoveFile Lib "kernel32.dll" Alias "MoveFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String) As Long
Public Declare Function DeleteFile Lib "kernel32" Alias "DeleteFileA" (ByVal lpFileName As String) As Long
Public Declare Function PathFileExists Lib "shlwapi.dll" Alias "PathFileExistsA" (ByVal pszPath As String) As Long
Public Declare Function GetSystemDirectory Lib "kernel32.dll" Alias "GetSystemDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long
Public Declare Function GetWindowsDirectory Lib "kernel32.dll" Alias "GetWindowsDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long
Public Declare Function SHGetPathFromIDList Lib "shell32.dll" Alias "SHGetPathFromIDListA" (ByVal pidl As Long, ByVal pszPath As String) As Long
Public Declare Function SHBrowseForFolder Lib "shell32.dll" Alias "SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) As Long
Private Declare Function RealizePalette Lib "gdi32" (ByVal hDC As Long) As Long
Public Declare Function CreateFile Lib "kernel32" Alias "CreateFileA" (ByVal lpFileName As String, ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, lpSecurityAttributes As Any, ByVal dwCreationDisposition As Long, ByVal dwFlagsAndAttributes As Long, ByVal hTemplateFile As Long) As Long
Public Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Public Declare Function GetFileSize Lib "kernel32" (ByVal hFile As Long, lpFileSizeHigh As Long) As Long
Public Declare Function VirtualAlloc Lib "kernel32" (lpAddress As Any, ByVal dwSize As Long, ByVal flAllocationType As Long, ByVal flProtect As Long) As Long
Public Declare Function ReadFile Lib "kernel32" (ByVal hFile As Long, lpBuffer As Any, ByVal nNumberOfBytesToRead As Long, lpNumberOfBytesRead As Long, lpOverlapped As Any) As Long
Public Declare Function WriteFile Lib "kernel32" (ByVal hFile As Long, lpBuffer As Any, ByVal nNumberOfBytesToWrite As Long, lpNumberOfBytesWritten As Long, lpOverlapped As Any) As Long
Public Declare Function SetFilePointer Lib "kernel32" (ByVal hFile As Long, ByVal lDistanceToMove As Long, lpDistanceToMoveHigh As Long, ByVal dwMoveMethod As Long) As Long
Public Declare Function SetEndOfFile Lib "kernel32" (ByVal hFile As Long) As Long
Public Const GENERIC_READ = &H80000000
Public Const GENERIC_WRITE = &H40000000
Public Const FILE_SHARE_READ = &H1
Public Const OPEN_EXISTING = 3
Public Const FILE_ATTRIBUTE_NORMAL = &H80
Public Const INVALID_HANDLE_VALUE = -1
Public Const FILE_END = 2
Public Const FILE_BEGIN = 0
Public Const FILE_CURRENT = 1
Public Const LWA_COLORKEY = &H1
Public Const GWL_EXSTYLE = (-20)
Public Const WS_EX_LAYERED = &H80000
Public Const MAX_PATH = 260
Public Const SW_SHOWNORMAL = 1
Public Type FileTime
dwLowDateTime As Long
dwHighDateTime As Long
End Type
Public Type WIN32_FIND_DATA
dwFileAttributes As Long
ftCreationTime As FileTime
ftLastAccessTime As FileTime
ftLastWriteTime As FileTime
nFileSizeHigh As Long
nFileSizeLow As Long
dwReserved0 As Long
dwReserved1 As Long
cFileName As String * MAX_PATH
cAlternate As String * 14
End Type
Type BROWSEINFO
hOwner As Long
pidlRoot As Long
pszDisplayName As String
lpszTitle As String
ulFlags As Long
lpfn As Long
lParam As Long
iImage As Long
End Type
'untuk browse folder
Public Function BrowseFolder(ByVal aTitle As String, ByVal aForm As Form) As String
Dim bInfo As BROWSEINFO
Dim rtn&, pidl&, path$, pos%
Dim BrowsePath As String
bInfo.hOwner = aForm.hWnd
bInfo.lpszTitle = aTitle
bInfo.ulFlags = &H1
pidl& = SHBrowseForFolder(bInfo)
path = Space(512)
t = SHGetPathFromIDList(ByVal pidl&, ByVal path)
pos% = InStr(path$, Chr$(0))
BrowseFolder = Left(path$, pos - 1)
If Right$(Browse, 1) = "\" Then
BrowseFolder = BrowseFolder
Else
BrowseFolder = BrowseFolder + "\"
End If
If Right(BrowseFolder, 2) = "\\" Then BrowseFolder = Left(BrowseFolder, Len(BrowseFolder) - 1)
If BrowseFolder = "\" Then BrowseFolder = ""
End Function
Public Function StripNulls(ByVal OriginalStr As String) As String
If (InStr(OriginalStr, Chr$(0)) > 0) Then
OriginalStr = Left$(OriginalStr, InStr(OriginalStr, Chr(0)) - 1)
End If
StripNulls = OriginalStr
End Function
'fungsi untuk menentukan file script atau bukan
Public Function IsScript(Filename As String) As Boolean
IsScript = False
ext = Split("|vbs|vbe", "|")
For i = 1 To UBound(ext)
If LCase(Right(Filename, 3)) = LCase(ext(i)) Then IsScript = True
Next
End Function
Buat 1 module dengan nama modChecksum
masukan code di bawah ini
Public Function GetChecksum(FilePath As String) As String
Dim CheckSum(1 To 2) As String
CheckSum(1) = CalcBinary(FilePath, 499, 4500)
CheckSum(2) = CalcBinary(FilePath, 499, 4000)
GetChecksum = CheckSum(1) & CheckSum(2)
End Function
Public Function CalcBinary(ByVal lpFileName As String, ByVal lpByteCount As Long, Optional ByVal StartByte As Long = 0) As String
On Error GoTo err
Dim Bin() As Byte
Dim ByteSum As Long
Dim i As Long
ReDim Bin(lpByteCount) As Byte
Open lpFileName For Binary As #1
If StartByte = 0 Then
Get #1, , Bin
Else
Get #1, StartByte, Bin
End If
Close #1
For i = 0 To lpByteCount
ByteSum = ByteSum + Bin(i) ^ 2
Next i
CalcBinary = Hex$(ByteSum)
Exit Function
err:
CalcBinary = "00"
End Function
potongan code di atas di gunakan untuk meng kalkulasi checksum
buat 1 module lagi dengan nama modDatabase
lalu tambahkan code di bawah ini
Code:
Public VirusDB(5), IconDB(48), Bahaya(5) As String
Public Sub BuildDatabase()
Call Checksum_DB
Call IconCompare_DB
Call Script_DB
End Sub
Private Sub Checksum_DB()
VirusDB(1) = "Alman.A|8911D290F723"
VirusDB(2) = "Malingsi.A|A6292EA60230"
VirusDB(3) = "Conficker.A|9EC112ABB2F3"
VirusDB(4) = "N4B3.A|B5CCD36CDB98"
VirusDB(5) = "N4B3.B|A1FE6D6DBE07"
End Sub
Public Sub IconCompare_DB()
On Error Resume Next
IconDB(1) = "20938B2"
IconDB(2) = "19F4ED6"
IconDB(3) = "133BE0B"
IconDB(4) = "18EDEAE"
IconDB(5) = "1EF89C2"
IconDB(6) = "1C915FF"
IconDB(7) = "24563C4"
IconDB(8) = "1B2DB74"
IconDB(9) = "208EA72"
IconDB(10) = "22A064D"
IconDB(11) = "19B64EE"
IconDB(12) = "1D4B7E1"
IconDB(13) = "2087762"
IconDB(14) = "29C7258"
IconDB(15) = "1B18705"
IconDB(16) = "1B5FCAB"
IconDB(17) = "126D4CF"
IconDB(18) = "1C58E5C"
IconDB(19) = "15D7730"
IconDB(20) = "1FB82B7"
IconDB(21) = "112763E"
IconDB(22) = "2165AF9"
IconDB(23) = "25F46BE"
IconDB(24) = "206556B"
IconDB(25) = "22A8D69"
IconDB(26) = "19237F8"
IconDB(27) = "15022B4"
IconDB(28) = "1D8B4EB"
IconDB(29) = "1DBC1EA"
IconDB(30) = "2333F5D"
IconDB(31) = "1F37C2F"
IconDB(32) = "1C9CCA4"
IconDB(33) = "1DFDFB4"
IconDB(34) = "1C1283E"
IconDB(35) = "1F6598C"
IconDB(36) = "27F4C1A"
IconDB(37) = "22F92E0"
IconDB(38) = "191DBDC"
IconDB(39) = "27BFE4A"
IconDB(40) = "20E0907"
IconDB(46) = "2FA4C88"
IconDB(47) = "25AA630"
IconDB(48) = "1DE28E2"
End Sub
Public Sub Script_DB()
On Error Resume Next
Bahaya(1) = "Scripting.FileSystemObject|Wscript.ScriptFullName|WScript.Shell|.regwrite|.copy"
Bahaya(2) = "Wscript.ScriptFullName|createobject|strreverse|.regwrite"
Bahaya(3) = "createobject|Wscript.ScriptFullName|.regwrite|[autorun]"
Bahaya(4) = "createobject|Wscript.ScriptFullName|specialfolder|.regwrite"
Bahaya(5) = "chr(asc(mid(|createobject|Wscript.ScriptFullName|.GetFolder|.RegWrite"
End Sub
potongan code di atas adalah database pada antivirusnyaDim CheckSum(1 To 2) As String
CheckSum(1) = CalcBinary(FilePath, 499, 4500)
CheckSum(2) = CalcBinary(FilePath, 499, 4000)
GetChecksum = CheckSum(1) & CheckSum(2)
End Function
Public Function CalcBinary(ByVal lpFileName As String, ByVal lpByteCount As Long, Optional ByVal StartByte As Long = 0) As String
On Error GoTo err
Dim Bin() As Byte
Dim ByteSum As Long
Dim i As Long
ReDim Bin(lpByteCount) As Byte
Open lpFileName For Binary As #1
If StartByte = 0 Then
Get #1, , Bin
Else
Get #1, StartByte, Bin
End If
Close #1
For i = 0 To lpByteCount
ByteSum = ByteSum + Bin(i) ^ 2
Next i
CalcBinary = Hex$(ByteSum)
Exit Function
err:
CalcBinary = "00"
End Function
potongan code di atas di gunakan untuk meng kalkulasi checksum
buat 1 module lagi dengan nama modDatabase
lalu tambahkan code di bawah ini
Code:
Public VirusDB(5), IconDB(48), Bahaya(5) As String
Public Sub BuildDatabase()
Call Checksum_DB
Call IconCompare_DB
Call Script_DB
End Sub
Private Sub Checksum_DB()
VirusDB(1) = "Alman.A|8911D290F723"
VirusDB(2) = "Malingsi.A|A6292EA60230"
VirusDB(3) = "Conficker.A|9EC112ABB2F3"
VirusDB(4) = "N4B3.A|B5CCD36CDB98"
VirusDB(5) = "N4B3.B|A1FE6D6DBE07"
End Sub
Public Sub IconCompare_DB()
On Error Resume Next
IconDB(1) = "20938B2"
IconDB(2) = "19F4ED6"
IconDB(3) = "133BE0B"
IconDB(4) = "18EDEAE"
IconDB(5) = "1EF89C2"
IconDB(6) = "1C915FF"
IconDB(7) = "24563C4"
IconDB(8) = "1B2DB74"
IconDB(9) = "208EA72"
IconDB(10) = "22A064D"
IconDB(11) = "19B64EE"
IconDB(12) = "1D4B7E1"
IconDB(13) = "2087762"
IconDB(14) = "29C7258"
IconDB(15) = "1B18705"
IconDB(16) = "1B5FCAB"
IconDB(17) = "126D4CF"
IconDB(18) = "1C58E5C"
IconDB(19) = "15D7730"
IconDB(20) = "1FB82B7"
IconDB(21) = "112763E"
IconDB(22) = "2165AF9"
IconDB(23) = "25F46BE"
IconDB(24) = "206556B"
IconDB(25) = "22A8D69"
IconDB(26) = "19237F8"
IconDB(27) = "15022B4"
IconDB(28) = "1D8B4EB"
IconDB(29) = "1DBC1EA"
IconDB(30) = "2333F5D"
IconDB(31) = "1F37C2F"
IconDB(32) = "1C9CCA4"
IconDB(33) = "1DFDFB4"
IconDB(34) = "1C1283E"
IconDB(35) = "1F6598C"
IconDB(36) = "27F4C1A"
IconDB(37) = "22F92E0"
IconDB(38) = "191DBDC"
IconDB(39) = "27BFE4A"
IconDB(40) = "20E0907"
IconDB(46) = "2FA4C88"
IconDB(47) = "25AA630"
IconDB(48) = "1DE28E2"
End Sub
Public Sub Script_DB()
On Error Resume Next
Bahaya(1) = "Scripting.FileSystemObject|Wscript.ScriptFullName|WScript.Shell|.regwrite|.copy"
Bahaya(2) = "Wscript.ScriptFullName|createobject|strreverse|.regwrite"
Bahaya(3) = "createobject|Wscript.ScriptFullName|.regwrite|[autorun]"
Bahaya(4) = "createobject|Wscript.ScriptFullName|specialfolder|.regwrite"
Bahaya(5) = "chr(asc(mid(|createobject|Wscript.ScriptFullName|.GetFolder|.RegWrite"
End Sub
buat lagi 1 buah module dengan nama modQuar
masukan code yang ada di bawah ini
Option Explicit
Public Function EncodeFile(SourceFile As String, DestFile As String)
Dim ByteArray() As Byte, Filenr As Integer
Filenr = FreeFile
Open SourceFile For Binary As #Filenr
ReDim ByteArray(0 To LOF(Filenr) - 1)
Get #Filenr, , ByteArray()
Close #Filenr
Call Coder(ByteArray())
If (PathFileExists(DestFile)) <> 0 Then DeleteFile DestFile
Open DestFile For Binary As #Filenr
Put #Filenr, , ByteArray()
Close #Filenr
End Function
Public Function DecodeFile(SourceFile As String, DestFile As String)
Dim ByteArray() As Byte, Filenr As Integer
Filenr = FreeFile
Open SourceFile For Binary As #Filenr
ReDim ByteArray(0 To LOF(Filenr) - 1)
Get #Filenr, , ByteArray()
Close #Filenr
Call DeCoder(ByteArray())
If (PathFileExists(DestFile)) <> 0 Then DeleteFile DestFile
Open DestFile For Binary As #Filenr
Put #Filenr, , ByteArray()
Close #Filenr
End Function
Private Sub Coder(ByteArray() As Byte)
Dim x As Long
Dim Value As Integer
Value = 0
For x = 0 To UBound(ByteArray)
Value = Value + ByteArray(x)
If Value > 255 Then Value = Value - 256
ByteArray(x) = Value
Next
End Sub
Private Sub DeCoder(ByteArray() As Byte)
Dim x As Long
Dim Value As Integer
Dim newValue As Integer
newValue = 0
For x = 0 To UBound(ByteArray)
Value = newValue
newValue = ByteArray(x)
Value = ByteArray(x) - Value
If Value < 0 Then Value = Value + 256
ByteArray(x) = Value
Next
End Sub
Code di atas adalah code untuk enkripsi/dekripsi pada virus yang akan di karantinaPublic Function EncodeFile(SourceFile As String, DestFile As String)
Dim ByteArray() As Byte, Filenr As Integer
Filenr = FreeFile
Open SourceFile For Binary As #Filenr
ReDim ByteArray(0 To LOF(Filenr) - 1)
Get #Filenr, , ByteArray()
Close #Filenr
Call Coder(ByteArray())
If (PathFileExists(DestFile)) <> 0 Then DeleteFile DestFile
Open DestFile For Binary As #Filenr
Put #Filenr, , ByteArray()
Close #Filenr
End Function
Public Function DecodeFile(SourceFile As String, DestFile As String)
Dim ByteArray() As Byte, Filenr As Integer
Filenr = FreeFile
Open SourceFile For Binary As #Filenr
ReDim ByteArray(0 To LOF(Filenr) - 1)
Get #Filenr, , ByteArray()
Close #Filenr
Call DeCoder(ByteArray())
If (PathFileExists(DestFile)) <> 0 Then DeleteFile DestFile
Open DestFile For Binary As #Filenr
Put #Filenr, , ByteArray()
Close #Filenr
End Function
Private Sub Coder(ByteArray() As Byte)
Dim x As Long
Dim Value As Integer
Value = 0
For x = 0 To UBound(ByteArray)
Value = Value + ByteArray(x)
If Value > 255 Then Value = Value - 256
ByteArray(x) = Value
Next
End Sub
Private Sub DeCoder(ByteArray() As Byte)
Dim x As Long
Dim Value As Integer
Dim newValue As Integer
newValue = 0
For x = 0 To UBound(ByteArray)
Value = newValue
newValue = ByteArray(x)
Value = ByteArray(x) - Value
If Value < 0 Then Value = Value + 256
ByteArray(x) = Value
Next
End Sub
Buat lagi 1 module dengan nama modHeuristic
lalu masukan code di bawah ini
Private Declare Function ExtractIconEx Lib "shell32.dll" Alias "ExtractIconExA" (ByVal lpszFile As String, ByVal nIconIndex As Long, ByRef phiconLarge As Long, ByRef phiconSmall As Long, ByVal nIcons As Long) As Long
Private Declare Function DestroyIcon Lib "user32.dll" (ByVal hIcon As Long) As Long
Private Declare Function DrawIconEx Lib "user32" (ByVal hDC As Long, ByVal xLeft As Long, ByVal yTop As Long, ByVal hIcon As Long, ByVal cxWidth As Long, ByVal cyWidth As Long, ByVal istepIfAniCur As Long, ByVal hbrFlickerFreeDraw As Long, ByVal diFlags As Long) As Boolean
Private Declare Function ExtractIcon Lib "shell32.dll" Alias "ExtractIconA" (ByVal hInst As Long, ByVal lpszExefileName As String, ByVal nIconIndex As Long) As Long
Private Const DI_MASK = &H1
Private Const DI_IMAGE = &H2
Private Const DI_NORMAL = &H3
Private Const DI_COMPAT = &H4
Private Const DI_DEFAULTSIZE = &H8
Private Const SHGFI_DISPLAYNAME = &H200
Private Const SHGFI_EXETYPE = &H2000
Private Const SHGFI_SYSICONINDEX = &H4000
Private Const SHGFI_LARGEICON = &H0
Private Const SHGFI_SMALLICON = &H1
Private Const ILD_TRANSPARENT = &H1
Private Const SHGFI_SHELLICONSIZE = &H4
Private Const SHGFI_TYPENAME = &H400
Private Const BASIC_SHGFI_FLAGS = SHGFI_TYPENAME Or SHGFI_SHELLICONSIZE Or SHGFI_SYSICONINDEX Or SHGFI_DISPLAYNAME Or SHGFI_EXETYPE
Private SIconInfo As SHFILEINFO
Private SectionHeaders() As IMAGE_SECTION_HEADER
Dim i As Integer
Dim j As Integer
Public Function CekHeuristic(Filename As String)
CekHeuristic = ""
On Error GoTo hError
Dim hFile As Long, bRW As Long
Dim DOSheader As IMAGE_DOS_HEADER
Dim NTHeaders As IMAGE_NT_HEADERS
Dim Filedata As String
DOS_HEADER_INFO = ""
NT_HEADERS_INFO = ""
hFile = CreateFile(Filename, ByVal (GENERIC_READ Or GENERIC_WRITE), FILE_SHARE_READ, ByVal 0&, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, ByVal 0)
ReadFile hFile, DOSheader, Len(DOSheader), bRW, ByVal 0&
SetFilePointer hFile, DOSheader.e_lfanew, 0, 0
ReadFile hFile, NTHeaders, Len(NTHeaders), bRW, ByVal 0&
If NTHeaders.Signature <> IMAGE_NT_SIGNATURE Then
If IsScript(Filename) = True Then
Open Filename For Binary As #1
Filedata = Space$(LOF(1))
Get #1, , Filedata
Close #1
CekHeuristic = CekHeur(Filedata)
End If
Exit Function
End If
CekHeuristic = CekIconBinary(Filename)
hError:
End Function
Private Function CekHeur(Data As String)
Dim hsl, asl As Integer
strasli = LCase(Replace(Data, vbNewLine, "$"))
For i = 1 To UBound(Bahaya)
hsl = 0
strData = Split(Bahaya(i), "|")
asl = 0
For k = 0 To UBound(strData)
xxx = LCase(strData(k))
If InStr(strasli, xxx) > 0 Then hsl = hsl + 1
asl = asl + 1
Next
If hsl = asl Then
CekHeur = "Malicious-Script"
Exit Function
End If
Next
CekHeur = ""
End Function
Private Function CekIconBinary(PathFile As String)
Dim q As Integer
Dim IconIDNow As String
CekIconBinary = ""
IconIDNow = CalcIcon(PathFile)
If IconIDNow = "" Then Exit Function
For q = 1 To UBound(IconDB)
If IconDB(q) = IconIDNow Then
CekIconBinary = "Malicious-Icon"
Exit Function
End If
Next q
End Function
Private Function CalcBinary(ByVal lpFileName As String, ByVal lpByteCount As Long, Optional ByVal StartByte As Long = 0) As String
Dim Bin() As Byte
Dim ByteSum As Long
Dim i As Long
ReDim Bin(lpByteCount) As Byte
Open lpFileName For Binary As #1
If StartByte = 0 Then
Get #1, , Bin
Else
Get #1, StartByte, Bin
End If
Close #1
For i = 0 To lpByteCount
ByteSum = ByteSum + Bin(i) ^ 2
Next i
CalcBinary = Hex$(ByteSum)
End Function
Private Function CalcIcon(ByVal lpFileName As String) As String
Dim PicPath As String
Dim ByteSum As String
Dim IconExist As Long
Dim hIcon As Long
IconExist = ExtractIconEx(lpFileName, 0, ByVal 0&, hIcon, 1)
If IconExist <= 0 Then
IconExist = ExtractIconEx(lpFileName, 0, hIcon, ByVal 0&, 1)
If IconExist <= 0 Then Exit Function
End If
frmUtama.sIcon.BackColor = vbWhite
DrawIconEx frmUtama.sIcon.hDC, 0, 0, hIcon, 0, 0, 0, 0, DI_NORMAL
DestroyIcon hIcon
PicPath = Environ$("windir") & "\tmp.tmp"
SavePicture frmUtama.sIcon.Image, PicPath
ByteSum = CalcBinary(PicPath, FileLen(PicPath))
DeleteFile PicPath
CalcIcon = ByteSum
End Function
Fungsi di atas adalah fungsi untuk mengecek suatu file dengan metode heuristic icon + heuristic untuk virus VBSPrivate Declare Function DestroyIcon Lib "user32.dll" (ByVal hIcon As Long) As Long
Private Declare Function DrawIconEx Lib "user32" (ByVal hDC As Long, ByVal xLeft As Long, ByVal yTop As Long, ByVal hIcon As Long, ByVal cxWidth As Long, ByVal cyWidth As Long, ByVal istepIfAniCur As Long, ByVal hbrFlickerFreeDraw As Long, ByVal diFlags As Long) As Boolean
Private Declare Function ExtractIcon Lib "shell32.dll" Alias "ExtractIconA" (ByVal hInst As Long, ByVal lpszExefileName As String, ByVal nIconIndex As Long) As Long
Private Const DI_MASK = &H1
Private Const DI_IMAGE = &H2
Private Const DI_NORMAL = &H3
Private Const DI_COMPAT = &H4
Private Const DI_DEFAULTSIZE = &H8
Private Const SHGFI_DISPLAYNAME = &H200
Private Const SHGFI_EXETYPE = &H2000
Private Const SHGFI_SYSICONINDEX = &H4000
Private Const SHGFI_LARGEICON = &H0
Private Const SHGFI_SMALLICON = &H1
Private Const ILD_TRANSPARENT = &H1
Private Const SHGFI_SHELLICONSIZE = &H4
Private Const SHGFI_TYPENAME = &H400
Private Const BASIC_SHGFI_FLAGS = SHGFI_TYPENAME Or SHGFI_SHELLICONSIZE Or SHGFI_SYSICONINDEX Or SHGFI_DISPLAYNAME Or SHGFI_EXETYPE
Private SIconInfo As SHFILEINFO
Private SectionHeaders() As IMAGE_SECTION_HEADER
Dim i As Integer
Dim j As Integer
Public Function CekHeuristic(Filename As String)
CekHeuristic = ""
On Error GoTo hError
Dim hFile As Long, bRW As Long
Dim DOSheader As IMAGE_DOS_HEADER
Dim NTHeaders As IMAGE_NT_HEADERS
Dim Filedata As String
DOS_HEADER_INFO = ""
NT_HEADERS_INFO = ""
hFile = CreateFile(Filename, ByVal (GENERIC_READ Or GENERIC_WRITE), FILE_SHARE_READ, ByVal 0&, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, ByVal 0)
ReadFile hFile, DOSheader, Len(DOSheader), bRW, ByVal 0&
SetFilePointer hFile, DOSheader.e_lfanew, 0, 0
ReadFile hFile, NTHeaders, Len(NTHeaders), bRW, ByVal 0&
If NTHeaders.Signature <> IMAGE_NT_SIGNATURE Then
If IsScript(Filename) = True Then
Open Filename For Binary As #1
Filedata = Space$(LOF(1))
Get #1, , Filedata
Close #1
CekHeuristic = CekHeur(Filedata)
End If
Exit Function
End If
CekHeuristic = CekIconBinary(Filename)
hError:
End Function
Private Function CekHeur(Data As String)
Dim hsl, asl As Integer
strasli = LCase(Replace(Data, vbNewLine, "$"))
For i = 1 To UBound(Bahaya)
hsl = 0
strData = Split(Bahaya(i), "|")
asl = 0
For k = 0 To UBound(strData)
xxx = LCase(strData(k))
If InStr(strasli, xxx) > 0 Then hsl = hsl + 1
asl = asl + 1
Next
If hsl = asl Then
CekHeur = "Malicious-Script"
Exit Function
End If
Next
CekHeur = ""
End Function
Private Function CekIconBinary(PathFile As String)
Dim q As Integer
Dim IconIDNow As String
CekIconBinary = ""
IconIDNow = CalcIcon(PathFile)
If IconIDNow = "" Then Exit Function
For q = 1 To UBound(IconDB)
If IconDB(q) = IconIDNow Then
CekIconBinary = "Malicious-Icon"
Exit Function
End If
Next q
End Function
Private Function CalcBinary(ByVal lpFileName As String, ByVal lpByteCount As Long, Optional ByVal StartByte As Long = 0) As String
Dim Bin() As Byte
Dim ByteSum As Long
Dim i As Long
ReDim Bin(lpByteCount) As Byte
Open lpFileName For Binary As #1
If StartByte = 0 Then
Get #1, , Bin
Else
Get #1, StartByte, Bin
End If
Close #1
For i = 0 To lpByteCount
ByteSum = ByteSum + Bin(i) ^ 2
Next i
CalcBinary = Hex$(ByteSum)
End Function
Private Function CalcIcon(ByVal lpFileName As String) As String
Dim PicPath As String
Dim ByteSum As String
Dim IconExist As Long
Dim hIcon As Long
IconExist = ExtractIconEx(lpFileName, 0, ByVal 0&, hIcon, 1)
If IconExist <= 0 Then
IconExist = ExtractIconEx(lpFileName, 0, hIcon, ByVal 0&, 1)
If IconExist <= 0 Then Exit Function
End If
frmUtama.sIcon.BackColor = vbWhite
DrawIconEx frmUtama.sIcon.hDC, 0, 0, hIcon, 0, 0, 0, 0, DI_NORMAL
DestroyIcon hIcon
PicPath = Environ$("windir") & "\tmp.tmp"
SavePicture frmUtama.sIcon.Image, PicPath
ByteSum = CalcBinary(PicPath, FileLen(PicPath))
DeleteFile PicPath
CalcIcon = ByteSum
End Function
Buat 1 module dengan nama modIconCompare
lalu masukan code di bawah ini
Option Explicit
Private Const SHGFI_DISPLAYNAME = &H200, SHGFI_EXETYPE = &H2000, SHGFI_SYSICONINDEX = &H4000, SHGFI_LARGEICON = &H0, SHGFI_SMALLICON = &H1, SHGFI_SHELLICONSIZE = &H4, SHGFI_TYPENAME = &H400, ILD_TRANSPARENT = &H1, BASIC_SHGFI_FLAGS = SHGFI_TYPENAME Or SHGFI_SHELLICONSIZE Or SHGFI_SYSICONINDEX Or SHGFI_DISPLAYNAME Or SHGFI_EXETYPE
Public Type SHFILEINFO
hIcon As Long: iIcon As Long: dwAttributes As Long: szDisplayName As String * MAX_PATH: szTypeName As String * 80
End Type
Private Declare Function SHGetFileInfo Lib "shell32.dll" Alias "SHGetFileInfoA" (ByVal pszPath As String, ByVal dwFileAttributes As Long, psfi As SHFILEINFO, ByVal cbSizeFileInfo As Long, ByVal uFlags As Long) As Long
Private Declare Function ImageList_Draw Lib "comctl32.dll" (ByVal himl As Long, ByVal i As Long, ByVal hdcDest As Long, ByVal x As Long, ByVal y As Long, ByVal flags As Long) As Long
Private shinfo As SHFILEINFO, sshinfo As SHFILEINFO
Private Declare Function DrawIconEx Lib "user32.dll" (ByVal hDC As Long, ByVal xLeft As Long, ByVal yTop As Long, ByVal hIcon As Long, ByVal cxWidth As Long, ByVal cyWidth As Long, ByVal istepIfAniCur As Long, ByVal hbrFlickerFreeDraw As Long, ByVal diFlags As Long) As Long
Private SIconInfo As SHFILEINFO
Public Enum IconRetrieve
ricnLarge = 32
ricnSmall = 16
End Enum
Public Sub RetrieveIcon(fName As String, DC As PictureBox, icnSize As IconRetrieve)
Dim hImgSmall, hImgLarge As Long
Debug.Print fName
Select Case icnSize
Case ricnSmall
hImgSmall = SHGetFileInfo(fName$, 0&, shinfo, Len(shinfo), BASIC_SHGFI_FLAGS Or SHGFI_SMALLICON)
Call ImageList_Draw(hImgSmall, shinfo.iIcon, DC.hDC, 0, 0, ILD_TRANSPARENT)
Case ricnLarge
hImgLarge& = SHGetFileInfo(fName$, 0&, shinfo, Len(shinfo), BASIC_SHGFI_FLAGS Or SHGFI_LARGEICON)
Call ImageList_Draw(hImgLarge, shinfo.iIcon, DC.hDC, 0, 0, ILD_TRANSPARENT)
End Select
End Sub
Public Function ExtractIcon(Filename As String, AddtoImageList As ImageList, PictureBox As PictureBox, PixelsXY As IconRetrieve, iKey As String) As Long
Dim SmallIcon As Long
Dim NewImage As ListImage
Dim IconIndex As Integer
On Error GoTo Load_New_Icon
If iKey <> "Application" And iKey <> "Shortcut" Then
ExtractIcon = AddtoImageList.ListImages(iKey).Index
Exit Function
End If
Load_New_Icon:
On Error GoTo Reset_Key
RetrieveIcon Filename, PictureBox, PixelsXY
IconIndex = AddtoImageList.ListImages.Count + 1
Set NewImage = AddtoImageList.ListImages.Add(IconIndex, iKey, PictureBox.Image)
ExtractIcon = IconIndex
Exit Function
Reset_Key:
iKey = ""
Resume
End Function
Public Sub GetLargeIcon(icPath$, pDisp As PictureBox)
Dim hImgLrg&: hImgLrg = SHGetFileInfo(icPath$, 0&, SIconInfo, Len(SIconInfo), BASIC_SHGFI_FLAGS Or SHGFI_LARGEICON)
ImageList_Draw hImgLrg, SIconInfo.iIcon, pDisp.hDC, 0, 0, ILD_TRANSPARENT
End Sub
kode di atas di butuhkan untuk metode heuristic icon pada antivirusPrivate Const SHGFI_DISPLAYNAME = &H200, SHGFI_EXETYPE = &H2000, SHGFI_SYSICONINDEX = &H4000, SHGFI_LARGEICON = &H0, SHGFI_SMALLICON = &H1, SHGFI_SHELLICONSIZE = &H4, SHGFI_TYPENAME = &H400, ILD_TRANSPARENT = &H1, BASIC_SHGFI_FLAGS = SHGFI_TYPENAME Or SHGFI_SHELLICONSIZE Or SHGFI_SYSICONINDEX Or SHGFI_DISPLAYNAME Or SHGFI_EXETYPE
Public Type SHFILEINFO
hIcon As Long: iIcon As Long: dwAttributes As Long: szDisplayName As String * MAX_PATH: szTypeName As String * 80
End Type
Private Declare Function SHGetFileInfo Lib "shell32.dll" Alias "SHGetFileInfoA" (ByVal pszPath As String, ByVal dwFileAttributes As Long, psfi As SHFILEINFO, ByVal cbSizeFileInfo As Long, ByVal uFlags As Long) As Long
Private Declare Function ImageList_Draw Lib "comctl32.dll" (ByVal himl As Long, ByVal i As Long, ByVal hdcDest As Long, ByVal x As Long, ByVal y As Long, ByVal flags As Long) As Long
Private shinfo As SHFILEINFO, sshinfo As SHFILEINFO
Private Declare Function DrawIconEx Lib "user32.dll" (ByVal hDC As Long, ByVal xLeft As Long, ByVal yTop As Long, ByVal hIcon As Long, ByVal cxWidth As Long, ByVal cyWidth As Long, ByVal istepIfAniCur As Long, ByVal hbrFlickerFreeDraw As Long, ByVal diFlags As Long) As Long
Private SIconInfo As SHFILEINFO
Public Enum IconRetrieve
ricnLarge = 32
ricnSmall = 16
End Enum
Public Sub RetrieveIcon(fName As String, DC As PictureBox, icnSize As IconRetrieve)
Dim hImgSmall, hImgLarge As Long
Debug.Print fName
Select Case icnSize
Case ricnSmall
hImgSmall = SHGetFileInfo(fName$, 0&, shinfo, Len(shinfo), BASIC_SHGFI_FLAGS Or SHGFI_SMALLICON)
Call ImageList_Draw(hImgSmall, shinfo.iIcon, DC.hDC, 0, 0, ILD_TRANSPARENT)
Case ricnLarge
hImgLarge& = SHGetFileInfo(fName$, 0&, shinfo, Len(shinfo), BASIC_SHGFI_FLAGS Or SHGFI_LARGEICON)
Call ImageList_Draw(hImgLarge, shinfo.iIcon, DC.hDC, 0, 0, ILD_TRANSPARENT)
End Select
End Sub
Public Function ExtractIcon(Filename As String, AddtoImageList As ImageList, PictureBox As PictureBox, PixelsXY As IconRetrieve, iKey As String) As Long
Dim SmallIcon As Long
Dim NewImage As ListImage
Dim IconIndex As Integer
On Error GoTo Load_New_Icon
If iKey <> "Application" And iKey <> "Shortcut" Then
ExtractIcon = AddtoImageList.ListImages(iKey).Index
Exit Function
End If
Load_New_Icon:
On Error GoTo Reset_Key
RetrieveIcon Filename, PictureBox, PixelsXY
IconIndex = AddtoImageList.ListImages.Count + 1
Set NewImage = AddtoImageList.ListImages.Add(IconIndex, iKey, PictureBox.Image)
ExtractIcon = IconIndex
Exit Function
Reset_Key:
iKey = ""
Resume
End Function
Public Sub GetLargeIcon(icPath$, pDisp As PictureBox)
Dim hImgLrg&: hImgLrg = SHGetFileInfo(icPath$, 0&, SIconInfo, Len(SIconInfo), BASIC_SHGFI_FLAGS Or SHGFI_LARGEICON)
ImageList_Draw hImgLrg, SIconInfo.iIcon, pDisp.hDC, 0, 0, ILD_TRANSPARENT
End Sub
Buat 1 module dengan nama modLV
lalu masukan code di bawah ini
Public Function GetSelected(TheLV As ListView)
Dim Sel As String
For i = 1 To TheLV.ListItems.Count
If TheLV.ListItems.Item(i).Checked = True Then
Sel = Sel & "|" & TheLV.ListItems.Item(i).SubItems(1)
End If
Next
GetSelected = Sel
End Function
Public Function SelectedAll(TheLV As ListView)
For i = 1 To TheLV.ListItems.Count
TheLV.ListItems.Item(i).Checked = True
Next
End Function
Public Function SelectedNone(TheLV As ListView)
For i = 1 To TheLV.ListItems.Count
TheLV.ListItems.Item(i).Checked = False
Next
End Function
Public Function GetIndex(TheLV As ListView, Data As String) As Integer
For i = 1 To TheLV.ListItems.Count
If TheLV.ListItems.Item(i).SubItems(1) = Data Then
GetIndex = i
End If
Next
End Function
Public Function UnSelect(TheLV As ListView, Data As String)
For i = 1 To TheLV.ListItems.Count
If TheLV.ListItems.Item(i).SubItems(3) = Data Then
TheLV.ListItems.Item(i).Checked = False
End If
Next
End Function
Public Function AddDetect(TheLV As ListView, FilePath As String, VirData As String)
With TheLV
If Left(VirData, 9) <> "Malicious" Then
Set lvItm = .ListItems.Add(, , Split(VirData, "|")(0), , frmUtama.ImgSmall.ListImages(1).Index)
lvItm.SubItems(1) = FilePath
lvItm.SubItems(2) = Split(VirData, "|")(1)
lvItm.SubItems(3) = "Virus File"
Else
Set lvItm = .ListItems.Add(, , VirData, , frmUtama.ImgSmall.ListImages(1).Index)
lvItm.SubItems(1) = FilePath
lvItm.SubItems(2) = GetChecksum(FilePath)
lvItm.SubItems(3) = "Virus File"
End If
End With
End Function
Dim Sel As String
For i = 1 To TheLV.ListItems.Count
If TheLV.ListItems.Item(i).Checked = True Then
Sel = Sel & "|" & TheLV.ListItems.Item(i).SubItems(1)
End If
Next
GetSelected = Sel
End Function
Public Function SelectedAll(TheLV As ListView)
For i = 1 To TheLV.ListItems.Count
TheLV.ListItems.Item(i).Checked = True
Next
End Function
Public Function SelectedNone(TheLV As ListView)
For i = 1 To TheLV.ListItems.Count
TheLV.ListItems.Item(i).Checked = False
Next
End Function
Public Function GetIndex(TheLV As ListView, Data As String) As Integer
For i = 1 To TheLV.ListItems.Count
If TheLV.ListItems.Item(i).SubItems(1) = Data Then
GetIndex = i
End If
Next
End Function
Public Function UnSelect(TheLV As ListView, Data As String)
For i = 1 To TheLV.ListItems.Count
If TheLV.ListItems.Item(i).SubItems(3) = Data Then
TheLV.ListItems.Item(i).Checked = False
End If
Next
End Function
Public Function AddDetect(TheLV As ListView, FilePath As String, VirData As String)
With TheLV
If Left(VirData, 9) <> "Malicious" Then
Set lvItm = .ListItems.Add(, , Split(VirData, "|")(0), , frmUtama.ImgSmall.ListImages(1).Index)
lvItm.SubItems(1) = FilePath
lvItm.SubItems(2) = Split(VirData, "|")(1)
lvItm.SubItems(3) = "Virus File"
Else
Set lvItm = .ListItems.Add(, , VirData, , frmUtama.ImgSmall.ListImages(1).Index)
lvItm.SubItems(1) = FilePath
lvItm.SubItems(2) = GetChecksum(FilePath)
lvItm.SubItems(3) = "Virus File"
End If
End With
End Function
Buat 1 module dengan nama modPE
lalu masukan code di bawah ini
Public Type IMAGE_DOS_HEADER
e_magic As Integer
e_cblp As Integer
e_cp As Integer
e_crlc As Integer
e_cparhdr As Integer
e_minalloc As Integer
e_maxalloc As Integer
e_ss As Integer
e_sp As Integer
e_csum As Integer
e_ip As Integer
e_cs As Integer
e_lfarlc As Integer
e_ovno As Integer
e_res(1 To 4) As Integer
e_oemid As Integer
e_oeminfo As Integer
e_res2(1 To 10) As Integer
e_lfanew As Long
End Type
Public Type IMAGE_SECTION_HEADER
nameSec As String * 6
PhisicalAddress As Integer
VirtualSize As Long
VirtualAddress As Long
SizeOfRawData As Long
PointerToRawData As Long
PointerToRelocations As Long
PointerToLinenumbers As Long
NumberOfRelocations As Integer
NumberOfLinenumbers As Integer
Characteristics As Long
End Type
Public Type IMAGE_DATA_DIRECTORY
VirtualAddress As Long
size As Long
End Type
Public Type IMAGE_OPTIONAL_HEADER
Magic As Integer
MajorLinkerVersion As Byte
MinorLinkerVersion As Byte
SizeOfCode As Long
SizeOfInitializedData As Long
SizeOfUninitializedData As Long
AddressOfEntryPoint As Long
BaseOfCode As Long
BaseOfData As Long
ImageBase As Long
SectionAlignment As Long
FileAlignment As Long
MajorOperatingSystemVersion As Integer
MinorOperatingSystemVersion As Integer
MajorImageVersion As Integer
MinorImageVersion As Integer
MajorSubsystemVersion As Integer
MinorSubsystemVersion As Integer
Win32VersionValue As Long
SizeOfImage As Long
SizeOfHeaders As Long
CheckSum As Long
Subsystem As Integer
DllCharacteristics As Integer
SizeOfStackReserve As Long
SizeOfStackCommit As Long
SizeOfHeapReserve As Long
SizeOfHeapCommit As Long
LoaderFlags As Long
NumberOfRvaAndSizes As Long
DataDirectory(0 To 15) As IMAGE_DATA_DIRECTORY
End Type
Public Type IMAGE_FILE_HEADER
Machine As Integer
NumberOfSections As Integer
TimeDateStamp As Long
PointerToSymbolTable As Long
NumberOfSymbols As Long
SizeOfOptionalHeader As Integer
Characteristics As Integer
End Type
Public Type IMAGE_NT_HEADERS
Signature As Long
FileHeader As IMAGE_FILE_HEADER
OptionalHeader As IMAGE_OPTIONAL_HEADER
End Type
Public Type IMAGE_EXPORT_DIRECTORY
Characteristics As Long
TimeDateStamp As Long
MajorVersion As Integer
MinorVersion As Integer
Name As Long
Base As Long
NumberOfFunctions As Long
NumberOfNames As Long
AddressOfFunctions As Long
AddressOfNames As Long
AddressOfNameOrdinals As Long
End Type
Public Type IMAGE_IMPORT_DESCRIPTOR
OriginalFirstThunk As Long
TimeDateStamp As Long
ForwarderChain As Long
Name As Long
FirstThunk As Long
End Type
Public Type IMAGE_IMPORT_BY_NAME
Hint As Integer
Name As String * 255
End Type
Public Const IMAGE_SIZEOF_SECTION_HEADER = 40
Public Const IMAGE_DOS_SIGNATURE = &H5A4D
Public Const IMAGE_NT_SIGNATURE = &H4550
Public Const IMAGE_ORDINAL_FLAG = &H80000000
Public Enum SECTION_CHARACTERISTICS
IMAGE_SCN_LNK_NRELOC_OVFL = &H1000000 'Section contains extended relocations.
IMAGE_SCN_MEM_DISCARDABLE = &H2000000 'Section can be discarded.
IMAGE_SCN_MEM_NOT_CACHED = &H4000000 'Section is not cachable.
IMAGE_SCN_MEM_NOT_PAGED = &H8000000 'Section is not pageable.
IMAGE_SCN_MEM_SHARED = &H10000000 'Section is shareable.
IMAGE_SCN_MEM_EXECUTE = &H20000000 'Section is executable.
IMAGE_SCN_MEM_READ = &H40000000 'Section is readable.
IMAGE_SCN_MEM_WRITE = &H80000000 'Section is writeable.
End Enum
Public Enum IMAGE_DIRECTORY
IMAGE_DIRECTORY_ENTRY_EXPORT = 0 ' Export Directory
IMAGE_DIRECTORY_ENTRY_IMPORT = 1 ' Import Directory
IMAGE_DIRECTORY_ENTRY_RESOURCE = 2 ' Resource Directory
IMAGE_DIRECTORY_ENTRY_EXCEPTION = 3 ' Exception Directory
IMAGE_DIRECTORY_ENTRY_SECURITY = 4 ' Security Directory
IMAGE_DIRECTORY_ENTRY_BASERELOC = 5 ' Base Relocation Table
IMAGE_DIRECTORY_ENTRY_DEBUG = 6 ' Debug Directory
IMAGE_DIRECTORY_ENTRY_ARCHITECTURE = 7 ' Architecture Specific Data
IMAGE_DIRECTORY_ENTRY_GLOBALPTR = 8 ' RVA of GP
IMAGE_DIRECTORY_ENTRY_TLS = 9 ' TLS Directory
IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG = 10 ' Load Configuration Directory
IMAGE_DIRECTORY_ENTRY_BOUND_IMPORT = 11 ' Bound Import Directory in headers
IMAGE_DIRECTORY_ENTRY_IAT = 12 ' Import Address Table
IMAGE_DIRECTORY_ENTRY_DELAY_IMPORT = 13 ' Delay Load Import Descriptors
IMAGE_DIRECTORY_ENTRY_COM_DESCRIPTOR = 14 ' COM Runtime descriptor
End Enum
code di atas berfungsi untuk pengecekan PE HEADERe_magic As Integer
e_cblp As Integer
e_cp As Integer
e_crlc As Integer
e_cparhdr As Integer
e_minalloc As Integer
e_maxalloc As Integer
e_ss As Integer
e_sp As Integer
e_csum As Integer
e_ip As Integer
e_cs As Integer
e_lfarlc As Integer
e_ovno As Integer
e_res(1 To 4) As Integer
e_oemid As Integer
e_oeminfo As Integer
e_res2(1 To 10) As Integer
e_lfanew As Long
End Type
Public Type IMAGE_SECTION_HEADER
nameSec As String * 6
PhisicalAddress As Integer
VirtualSize As Long
VirtualAddress As Long
SizeOfRawData As Long
PointerToRawData As Long
PointerToRelocations As Long
PointerToLinenumbers As Long
NumberOfRelocations As Integer
NumberOfLinenumbers As Integer
Characteristics As Long
End Type
Public Type IMAGE_DATA_DIRECTORY
VirtualAddress As Long
size As Long
End Type
Public Type IMAGE_OPTIONAL_HEADER
Magic As Integer
MajorLinkerVersion As Byte
MinorLinkerVersion As Byte
SizeOfCode As Long
SizeOfInitializedData As Long
SizeOfUninitializedData As Long
AddressOfEntryPoint As Long
BaseOfCode As Long
BaseOfData As Long
ImageBase As Long
SectionAlignment As Long
FileAlignment As Long
MajorOperatingSystemVersion As Integer
MinorOperatingSystemVersion As Integer
MajorImageVersion As Integer
MinorImageVersion As Integer
MajorSubsystemVersion As Integer
MinorSubsystemVersion As Integer
Win32VersionValue As Long
SizeOfImage As Long
SizeOfHeaders As Long
CheckSum As Long
Subsystem As Integer
DllCharacteristics As Integer
SizeOfStackReserve As Long
SizeOfStackCommit As Long
SizeOfHeapReserve As Long
SizeOfHeapCommit As Long
LoaderFlags As Long
NumberOfRvaAndSizes As Long
DataDirectory(0 To 15) As IMAGE_DATA_DIRECTORY
End Type
Public Type IMAGE_FILE_HEADER
Machine As Integer
NumberOfSections As Integer
TimeDateStamp As Long
PointerToSymbolTable As Long
NumberOfSymbols As Long
SizeOfOptionalHeader As Integer
Characteristics As Integer
End Type
Public Type IMAGE_NT_HEADERS
Signature As Long
FileHeader As IMAGE_FILE_HEADER
OptionalHeader As IMAGE_OPTIONAL_HEADER
End Type
Public Type IMAGE_EXPORT_DIRECTORY
Characteristics As Long
TimeDateStamp As Long
MajorVersion As Integer
MinorVersion As Integer
Name As Long
Base As Long
NumberOfFunctions As Long
NumberOfNames As Long
AddressOfFunctions As Long
AddressOfNames As Long
AddressOfNameOrdinals As Long
End Type
Public Type IMAGE_IMPORT_DESCRIPTOR
OriginalFirstThunk As Long
TimeDateStamp As Long
ForwarderChain As Long
Name As Long
FirstThunk As Long
End Type
Public Type IMAGE_IMPORT_BY_NAME
Hint As Integer
Name As String * 255
End Type
Public Const IMAGE_SIZEOF_SECTION_HEADER = 40
Public Const IMAGE_DOS_SIGNATURE = &H5A4D
Public Const IMAGE_NT_SIGNATURE = &H4550
Public Const IMAGE_ORDINAL_FLAG = &H80000000
Public Enum SECTION_CHARACTERISTICS
IMAGE_SCN_LNK_NRELOC_OVFL = &H1000000 'Section contains extended relocations.
IMAGE_SCN_MEM_DISCARDABLE = &H2000000 'Section can be discarded.
IMAGE_SCN_MEM_NOT_CACHED = &H4000000 'Section is not cachable.
IMAGE_SCN_MEM_NOT_PAGED = &H8000000 'Section is not pageable.
IMAGE_SCN_MEM_SHARED = &H10000000 'Section is shareable.
IMAGE_SCN_MEM_EXECUTE = &H20000000 'Section is executable.
IMAGE_SCN_MEM_READ = &H40000000 'Section is readable.
IMAGE_SCN_MEM_WRITE = &H80000000 'Section is writeable.
End Enum
Public Enum IMAGE_DIRECTORY
IMAGE_DIRECTORY_ENTRY_EXPORT = 0 ' Export Directory
IMAGE_DIRECTORY_ENTRY_IMPORT = 1 ' Import Directory
IMAGE_DIRECTORY_ENTRY_RESOURCE = 2 ' Resource Directory
IMAGE_DIRECTORY_ENTRY_EXCEPTION = 3 ' Exception Directory
IMAGE_DIRECTORY_ENTRY_SECURITY = 4 ' Security Directory
IMAGE_DIRECTORY_ENTRY_BASERELOC = 5 ' Base Relocation Table
IMAGE_DIRECTORY_ENTRY_DEBUG = 6 ' Debug Directory
IMAGE_DIRECTORY_ENTRY_ARCHITECTURE = 7 ' Architecture Specific Data
IMAGE_DIRECTORY_ENTRY_GLOBALPTR = 8 ' RVA of GP
IMAGE_DIRECTORY_ENTRY_TLS = 9 ' TLS Directory
IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG = 10 ' Load Configuration Directory
IMAGE_DIRECTORY_ENTRY_BOUND_IMPORT = 11 ' Bound Import Directory in headers
IMAGE_DIRECTORY_ENTRY_IAT = 12 ' Import Address Table
IMAGE_DIRECTORY_ENTRY_DELAY_IMPORT = 13 ' Delay Load Import Descriptors
IMAGE_DIRECTORY_ENTRY_COM_DESCRIPTOR = 14 ' COM Runtime descriptor
End Enum
buat 1 module dengan nama modScanning
lalu tambahkan code di bawah ini
Public jumlahDir As Long, jumlahFile As Long, jumlahVirus As Long
Public StopScan As Boolean
Public Function CekVirus(FilePath As String) As String
CekVirus = ""
For i = 1 To UBound(VirusDB)
If GetChecksum(FilePath) = Split(VirusDB(i), "|")(1) Then
CekVirus = VirusDB(i)
Exit Function
End If
Next
If FileLen(FilePath) / 1024 <= 512 Then
CekVirus = CekHeuristic(FilePath)
End If
End Function
Public Sub FindFilesEx(ByVal lpFolderName As String, ByVal SubDirs As Boolean)
Dim i As Long
Dim hSearch As Long, WFD As WIN32_FIND_DATA
Dim Result As Long, CurItem As String
Dim tempDir() As String, dirCount As Long
Dim RealPath As String, GetViri As String
GetViri = ""
dirCount = -1
ScanInfo = "Scan File"
If Right$(lpFolderName, 1) = "\" Then
RealPath = lpFolderName
Else
RealPath = lpFolderName & "\"
End If
hSearch = FindFirstFile(RealPath & "*", WFD)
If Not hSearch = INVALID_HANDLE_VALUE Then
Result = True
Do While Result
DoEvents
If StopScan = True Then Exit Do
CurItem = StripNulls(WFD.cFileName)
If Not CurItem = "." And Not CurItem = ".." Then
If PathIsDirectory(RealPath & CurItem) <> 0 Then
jumlahDir = jumlahDir + 1
frmUtama.lblDirScan.Caption = jumlahDir
If SubDirs = True Then
dirCount = dirCount + 1
ReDim Preserve tempDir(dirCount) As String
tempDir(dirCount) = RealPath & CurItem
End If
Else
jumlahFile = jumlahFile + 1
frmUtama.lblFileScan.Caption = jumlahFile
frmUtama.txtFileScan.Text = RealPath & CurItem
frmUtama.txtFileScan.SelStart = Len(frmUtama.txtFileScan.Text)
If WFD.nFileSizeLow > 5120 Or WFD.nFileSizeHigh > 5120 Then
GetViri = CekVirus(RealPath & CurItem)
If GetViri <> "" Then
AddDetect frmUtama.lvScan, RealPath & CurItem, GetViri
jumlahVirus = jumlahVirus + 1
frmUtama.lblFileDet.Caption = jumlahVirus
End If
End If
End If
End If
Result = FindNextFile(hSearch, WFD)
Loop
FindClose hSearch
If SubDirs = True Then
If dirCount <> -1 Then
For i = 0 To dirCount
FindFilesEx tempDir(i), True
Next i
End If
End If
End If
End Sub
Code di atas adalah code untuk scan file & folder pada antivirusPublic StopScan As Boolean
Public Function CekVirus(FilePath As String) As String
CekVirus = ""
For i = 1 To UBound(VirusDB)
If GetChecksum(FilePath) = Split(VirusDB(i), "|")(1) Then
CekVirus = VirusDB(i)
Exit Function
End If
Next
If FileLen(FilePath) / 1024 <= 512 Then
CekVirus = CekHeuristic(FilePath)
End If
End Function
Public Sub FindFilesEx(ByVal lpFolderName As String, ByVal SubDirs As Boolean)
Dim i As Long
Dim hSearch As Long, WFD As WIN32_FIND_DATA
Dim Result As Long, CurItem As String
Dim tempDir() As String, dirCount As Long
Dim RealPath As String, GetViri As String
GetViri = ""
dirCount = -1
ScanInfo = "Scan File"
If Right$(lpFolderName, 1) = "\" Then
RealPath = lpFolderName
Else
RealPath = lpFolderName & "\"
End If
hSearch = FindFirstFile(RealPath & "*", WFD)
If Not hSearch = INVALID_HANDLE_VALUE Then
Result = True
Do While Result
DoEvents
If StopScan = True Then Exit Do
CurItem = StripNulls(WFD.cFileName)
If Not CurItem = "." And Not CurItem = ".." Then
If PathIsDirectory(RealPath & CurItem) <> 0 Then
jumlahDir = jumlahDir + 1
frmUtama.lblDirScan.Caption = jumlahDir
If SubDirs = True Then
dirCount = dirCount + 1
ReDim Preserve tempDir(dirCount) As String
tempDir(dirCount) = RealPath & CurItem
End If
Else
jumlahFile = jumlahFile + 1
frmUtama.lblFileScan.Caption = jumlahFile
frmUtama.txtFileScan.Text = RealPath & CurItem
frmUtama.txtFileScan.SelStart = Len(frmUtama.txtFileScan.Text)
If WFD.nFileSizeLow > 5120 Or WFD.nFileSizeHigh > 5120 Then
GetViri = CekVirus(RealPath & CurItem)
If GetViri <> "" Then
AddDetect frmUtama.lvScan, RealPath & CurItem, GetViri
jumlahVirus = jumlahVirus + 1
frmUtama.lblFileDet.Caption = jumlahVirus
End If
End If
End If
End If
Result = FindNextFile(hSearch, WFD)
Loop
FindClose hSearch
If SubDirs = True Then
If dirCount <> -1 Then
For i = 0 To dirCount
FindFilesEx tempDir(i), True
Next i
End If
End If
End If
End Sub
buat 1 module dengan nama modEtc
masukan code di bawah ini
Public Function Action(Data As String, TheLV As ListView, Mode As String)
Dim Filedata() As String
Dim fName, tmp, Status As String
Dim y As Integer
Filedata = Split(Data, "|")
For i = 1 To UBound(Filedata)
a = a + 1
If Mode = "Q" Then
fName = GetFileName(Filedata(i))
EncodeFile Filedata(i), AppPath & "Quarantine\" & Left$(fName, Len(fName) - Len(GetExt(Filedata(i)))) & ".avq"
AddQList TheLV, Filedata(i), Left$(fName, Len(fName) - Len(GetExt(Filedata(i)))) & ".avq"
DeleteFile Filedata(i)
Status = "Di Karantina"
ElseIf Mode = "D" Then
DeleteFile Filedata(i)
Status = "Di Hapus"
End If
y = GetIndex(TheLV, Filedata(i))
With TheLV.ListItems.Item(y)
.SubItems(3) = Status
.Checked = False
.SmallIcon = frmUtama.ImgSmall.ListImages(2).Index
End With
Next
Action = a
End Function
Public Function AddQList(TheLV As ListView, FilePath As String, Source As String)
Dim Dat As String
Dat = AppPath & "Quarantine\HN.dat"
If PathFileExists(Dat) <> 0 Then
Open Dat For Input As #1
Input #1, isi
Close #1
DeleteFile Dat
Else
isi = ""
End If
namavir = TheLV.ListItems(GetIndex(TheLV, FilePath))
If InStrRev(isi, Source, , vbTextCompare) = 0 Then
Open Dat For Output As #2
Print #2, isi & "|" & namavir & "?" & FilePath & "?" & Source
Close #2
Else
Open Dat For Output As #3
Print #3, isi
Close #3
End If
End Function
Public Function GetFileName(PathFile As String) As String
Dim i As Long
Dim DirString As Long
For i = 1 To Len(PathFile)
If Mid$(PathFile, i, 1) = "\" Then DirString = i
Next i
GetFileName = Right$(PathFile, Len(PathFile) - DirString)
End Function
Public Function GetExt(ByVal lpFileName As String)
Dim sTemp As String
Dim i As Long
sTemp = GetFileName(lpFileName)
If InStr(lpFileName, ".") Then
For i = 0 To Len(sTemp) - 1
If Mid$(sTemp, Len(sTemp) - i, 1) = "." Then
GetExt = Mid$(sTemp, Len(sTemp) - i, i)
Exit Function
End If
Next i
End If
End Function
Dim Filedata() As String
Dim fName, tmp, Status As String
Dim y As Integer
Filedata = Split(Data, "|")
For i = 1 To UBound(Filedata)
a = a + 1
If Mode = "Q" Then
fName = GetFileName(Filedata(i))
EncodeFile Filedata(i), AppPath & "Quarantine\" & Left$(fName, Len(fName) - Len(GetExt(Filedata(i)))) & ".avq"
AddQList TheLV, Filedata(i), Left$(fName, Len(fName) - Len(GetExt(Filedata(i)))) & ".avq"
DeleteFile Filedata(i)
Status = "Di Karantina"
ElseIf Mode = "D" Then
DeleteFile Filedata(i)
Status = "Di Hapus"
End If
y = GetIndex(TheLV, Filedata(i))
With TheLV.ListItems.Item(y)
.SubItems(3) = Status
.Checked = False
.SmallIcon = frmUtama.ImgSmall.ListImages(2).Index
End With
Next
Action = a
End Function
Public Function AddQList(TheLV As ListView, FilePath As String, Source As String)
Dim Dat As String
Dat = AppPath & "Quarantine\HN.dat"
If PathFileExists(Dat) <> 0 Then
Open Dat For Input As #1
Input #1, isi
Close #1
DeleteFile Dat
Else
isi = ""
End If
namavir = TheLV.ListItems(GetIndex(TheLV, FilePath))
If InStrRev(isi, Source, , vbTextCompare) = 0 Then
Open Dat For Output As #2
Print #2, isi & "|" & namavir & "?" & FilePath & "?" & Source
Close #2
Else
Open Dat For Output As #3
Print #3, isi
Close #3
End If
End Function
Public Function GetFileName(PathFile As String) As String
Dim i As Long
Dim DirString As Long
For i = 1 To Len(PathFile)
If Mid$(PathFile, i, 1) = "\" Then DirString = i
Next i
GetFileName = Right$(PathFile, Len(PathFile) - DirString)
End Function
Public Function GetExt(ByVal lpFileName As String)
Dim sTemp As String
Dim i As Long
sTemp = GetFileName(lpFileName)
If InStr(lpFileName, ".") Then
For i = 0 To Len(sTemp) - 1
If Mid$(sTemp, Len(sTemp) - i, 1) = "." Then
GetExt = Mid$(sTemp, Len(sTemp) - i, i)
Exit Function
End If
Next i
End If
End Function
Code di atas adalah kumpulan fungsi etc untuk scanning,karantina,delete
[/php]
sekarang tinggal cara membuat form quarantinenya
setelah form baru sudah di buat,lalu rubah nama formnya menjadi frmQuarantine
Tambah 1 buah listview dengan nama lvQ
lalu setting listview tersebut sesuai dengan gambar di bawah ini,cara setting listview sudah tertera di postingan ke #1
Tambahkan 3 buah Command button dengan nama
- cmdDelete
- cmdRestore
- cmdRestore(1)
ya Kurang lebih seperti inilah
Tambahkan code di bawha ini ke dalam Command [ cmdDelete ]
If lvQ.ListItems.Count = 0 Then Exit Sub
Dim Data() As String
If PathFileExists(Dat) <> 0 Then
Open Dat For Input As #1
Input #1, isi
Close #1
DeleteFile Dat
Else
isi = ""
End If
Data = Split(isi, "|")
For i = 1 To UBound(Data)
namafile = lvQ.SelectedItem.SubItems(2)
If namafile <> Split(Data(i), "?")(1) Then
nyu = nyu & "|" & Data(i)
End If
Next
DeleteFile AppPath & "Quarantine\" & lvQ.SelectedItem.SubItems(1)
Open Dat For Output As #2
Print #2, nyu
Close #2
MsgBox "Success Deleting File !!!", vbInformation, ""
UpdateQ
code di atas berfungsi untuk menghapus file yang telah di karantinaDim Data() As String
If PathFileExists(Dat) <> 0 Then
Open Dat For Input As #1
Input #1, isi
Close #1
DeleteFile Dat
Else
isi = ""
End If
Data = Split(isi, "|")
For i = 1 To UBound(Data)
namafile = lvQ.SelectedItem.SubItems(2)
If namafile <> Split(Data(i), "?")(1) Then
nyu = nyu & "|" & Data(i)
End If
Next
DeleteFile AppPath & "Quarantine\" & lvQ.SelectedItem.SubItems(1)
Open Dat For Output As #2
Print #2, nyu
Close #2
MsgBox "Success Deleting File !!!", vbInformation, ""
UpdateQ
Masukan code di bawah ini ke Command [ cmdRestore ]
If lvQ.ListItems.Count = 0 Then Exit Sub
Select Case Index
Case 0
DecodeFile AppPath & "Quarantine\" & lvQ.SelectedItem.SubItems(1), lvQ.SelectedItem.SubItems(2)
MsgBox "File Restored to " & Chr(34) & lvQ.SelectedItem.SubItems(2) & Chr(34) & " !!!", vbInformation, ""
Case 1
sTitle = "Select path:" & vbNewLine & "Select path to restore file."
ThePath = BrowseFolder(sTitle, Me)
If ThePath <> "" Then
DecodeFile AppPath & "Quarantine\" & lvQ.SelectedItem.SubItems(1), ThePath & GetFileName(lvQ.SelectedItem.SubItems(2))
MsgBox "File Restored to " & Chr(34) & ThePath & GetFileName(lvQ.SelectedItem.SubItems(2)) & Chr(34) & " !!!", vbInformation, ""
End If
End Select
Select Case Index
Case 0
DecodeFile AppPath & "Quarantine\" & lvQ.SelectedItem.SubItems(1), lvQ.SelectedItem.SubItems(2)
MsgBox "File Restored to " & Chr(34) & lvQ.SelectedItem.SubItems(2) & Chr(34) & " !!!", vbInformation, ""
Case 1
sTitle = "Select path:" & vbNewLine & "Select path to restore file."
ThePath = BrowseFolder(sTitle, Me)
If ThePath <> "" Then
DecodeFile AppPath & "Quarantine\" & lvQ.SelectedItem.SubItems(1), ThePath & GetFileName(lvQ.SelectedItem.SubItems(2))
MsgBox "File Restored to " & Chr(34) & ThePath & GetFileName(lvQ.SelectedItem.SubItems(2)) & Chr(34) & " !!!", vbInformation, ""
End If
End Select
Lalu pada Form_Load() tambahkan code di bawah ini
frmUtama.Enabled = False
Dat = AppPath & "Quarantine\HN.dat"
UpdateQ
Dat = AppPath & "Quarantine\HN.dat"
UpdateQ
Masukan code di bawah ini ke dalam frmQuarantine
Dim Dat As String
Private Sub UpdateQ()
lvQ.ListItems.Clear
Dim Data() As String
If PathFileExists(Dat) = 0 Then Exit Sub
Open Dat For Input As #1
Input #1, isi
Close #1
Data = Split(isi, "|")
For i = 1 To UBound(Data)
With lvQ.ListItems.Add(, , Split(Data(i), "?")(0))
.SubItems(1) = Split(Data(i), "?")(2)
.SubItems(2) = Split(Data(i), "?")(1)
End With
Next
Me.Caption = "Quarantine (" & lvQ.ListItems.Count & ")"
End Sub
Private Sub UpdateQ()
lvQ.ListItems.Clear
Dim Data() As String
If PathFileExists(Dat) = 0 Then Exit Sub
Open Dat For Input As #1
Input #1, isi
Close #1
Data = Split(isi, "|")
For i = 1 To UBound(Data)
With lvQ.ListItems.Add(, , Split(Data(i), "?")(0))
.SubItems(1) = Split(Data(i), "?")(2)
.SubItems(2) = Split(Data(i), "?")(1)
End With
Next
Me.Caption = "Quarantine (" & lvQ.ListItems.Count & ")"
End Sub
Berfungsi untuk memanggil data yang ada di folder karantina
Nah sudah selesai kita membuat antivirusnya
Gimana, Mumet Ya?? Hahaha.. Ya sudah, tak kasih Source codenya.. Edit sendiri ya!!
Shorcut key microsoft word
udh lama gak posting blog nih.. buka blog tmen (http://wwwpengentauaja.blogspot.com) ada sorcut key dari ctrl + A sampai Ctrl + z . lalu aku visit situs microsoft. dapet juga shorcut key yang banyaaaaaakkkk banget, ya udh aku posting aja.. cekidot ah.
Menampilkan dan menggunakan windows
| Untuk melakukan hal ini | Tekan |
| Berpindah ke jendela berikutnya. | ALT + Tab |
| Berpindah ke jendela sebelumnya. | ALT + SHIFT + Tab |
| Menutup jendela aktif. | CTRL + W atau CTRL + F4 |
| Mengembalikan ukuran jendela aktif setelah Anda memaksimalkan itu. | ALT + F5 |
| Berpindah ke panel tugas dari panel lain dalam jendela program (searah jarum jam). Anda mungkin harus tekan F6 beberapa kali. | F6 |
| Berpindah ke panel tugas dari panel lain dalam jendela program (berlawanan arah). | SHIFT + F6 |
| Ketika lebih dari satu jendela terbuka, beralih ke jendela berikutnya. | CTRL + F6 |
| Berpindah ke jendela sebelumnya. | CTRL + SHIFT + F6 |
| Memaksimalkan atau memulihkan jendela yang dipilih. | CTRL + F10 |
| Menyalin gambar layar ke Clipboard. | CETAK LAYAR |
| Menyalin gambar dari jendela yang dipilih ke papan-klip. | ALT + PRINT SCREEN |
Menggunakan kotak dialog
| Untuk melakukan hal ini | Tekan |
| Pindah ke opsi berikutnya atau kelompok pilihan. | Tab |
| Pindah ke pilihan sebelumnya atau kelompok pilihan. | SHIFT + Tab |
| Beralih ke tab berikutnya di kotak dialog. | CTRL + Tab |
| Beralih ke tab sebelumnya di kotak dialog. | CTRL + SHIFT + Tab |
| Memindahkan antara pilihan dalam daftar drop-down terbuka, atau antara pilihan dalam kelompok pilihan. | Tombol panah |
| Melakukan aksi yang ditugaskan untuk tombol yang dipilih; memilih atau menghapus kotak centang dipilih. | SPASI |
| Pilih pilihan; Pilih atau Hapus centang pada kotak. | ALT + huruf yang digarisbawahi dalam pilihan |
| Membuka daftar drop-down yang dipilih. | ALT + PANAH BAWAH |
| Tentukan pilihan dari daftar drop-down. | Huruf pertama dari pilihan dalam daftar drop-down. |
| Menutup daftar drop-down yang dipilih; membatalkan perintah dan menutup kotak dialog. | ESC |
| Menjalankan perintah terpilih. | Masukkan |
Menggunakan mengedit kotak di dalam kotak dialog
Catatan Kotak edit adalah kosong di mana Anda ketik atau tempel entri, seperti nama pengguna atau lintasan map.
| Untuk melakukan hal ini | Tekan |
| Pindah ke awal entri. | RUMAH |
| Pindah ke akhir entri. | AKHIR |
| Memindahkan satu karakter ke kiri atau kanan. | Panah kiri atau panah kanan |
| Memindahkan satu kata ke kiri. | CTRL + PANAH KIRI |
| Memindahkan satu kata ke kanan. | CTRL + PANAH KANAN |
| Memilih atau membatalkan pilihan satu karakter ke kiri. | SHIFT + PANAH KIRI |
| Memilih atau membatalkan pilihan satu karakter ke kanan. | SHIFT + PANAH KANAN |
| Memilih atau membatalkan pilihan satu kata ke kiri. | CTRL + SHIFT + PANAH KIRI |
| Memilih atau membatalkan pilihan satu kata ke kanan. | CTRL + SHIFT + PANAH KANAN |
| Pilih dari kursor ke awal entri. | SHIFT + HOME |
| Pilih dari kursor ke akhir entri. | SHIFT + END |
Menggunakan kotak dialog terbuka dan Simpan sebagai
| Untuk melakukan hal ini | Tekan |
| Menampilkan kotak dialog yang terbuka . | CTRL + F12 atau CTRL + O |
| Menampilkan kotak dialog Simpan sebagai . | F12 |
| Buka berkas atau map yang dipilih. | Masukkan |
| Buka folder satu tingkat di atas folder yang dipilih. | BACKSPACE |
| Menghapus berkas atau map yang dipilih. | HAPUS |
| Menampilkan menu pintasan untuk item yang dipilih seperti folder atau file. | SHIFT + F10 |
| Bergerak maju melalui pilihan. | Tab |
| Pindah kembali melalui pilihan. | SHIFT + Tab |
| Membuka tampilan dalam daftar. | F4 atau ALT + saya |
Membatalkan dan mengulangi tindakan
| Untuk melakukan hal ini | Tekan |
| Membatalkan tindakan. | ESC |
| Mengurungkan suatu aksi. | CTRL + Z |
| Mengulang atau mengulangi tindakan. | CTRL + Y |
Mengakses dan menggunakan panel tugas dan galeri
| Untuk melakukan hal ini | Tekan |
| Berpindah ke panel tugas dari panel lain dalam jendela program. Anda mungkin harus tekan F6 beberapa kali. | F6 |
| Ketika menu aktif, pindah ke panel tugas. Anda mungkin harus menekan CTRL + Tab beberapa kali. | CTRL + Tab |
| Bila panel tugas aktif, pilih opsi berikutnya atau sebelumnya di jendela tugas. | Tab atau SHIFT + Tab |
| Menampilkan set lengkap perintah pada menu panel tugas. | CTRL + SPASI |
| Melakukan aksi yang ditugaskan untuk tombol yang dipilih. | SPACE BAR atau Enter |
| Buka menu drop-down untuk item yang dipilih galeri. | SHIFT + F10 |
| Pilih item pertama atau terakhir dalam galeri. | RUMAH atau akhir |
| Gulir ke atas atau ke bawah dalam daftar Galeri yang dipilih. | PAGE UP atau PAGE DOWN |
Menutup jendela tugas
- Tekan F6 untuk pindah ke panel tugas, jika perlu.
- Tekan CTRL + spasi.
- Gunakan tombol panah untuk memilih dekat, dan kemudian tekan Enter.
Memindahkan jendela tugas
- Tekan F6 untuk pindah ke panel tugas, jika perlu.
- Tekan CTRL + spasi.
- Gunakan tombol panah untuk bergerak, dan kemudian tekan Enter.
- Gunakan tombol panah untuk memindahkan jendela tugas, dan kemudian tekan Enter.
Mengubah ukuran jendela tugas
- Tekan F6 untuk pindah ke panel tugas, jika perlu.
- Tekan CTRL + spasi.
- Gunakan tombol panah untuk memilih ukuran, dan kemudian tekan Enter.
- Gunakan tombol panah untuk mengubah ukuran jendela tugas, dan kemudian tekan Enter.
Akses dan penggunaan tindakan yang tersedia
| Untuk melakukan hal ini | Tekan |
| Menampilkan menu pintasan untuk bagian yang dipilih. | SHIFT + F10 |
| Menampilkan menu atau pesan untuk suatu tindakan yang tersedia atau untuk tombol pilihan Autocorrect | ALT + SHIFT + F10 |
| Bergerak di antara pilihan dalam menu tindakan yang tersedia. | Tombol panah |
| Melakukan tindakan untuk item yang dipilih pada menu yang tersedia tindakan. | Masukkan |
| Tutup menu tindakan yang tersedia atau pesan. | ESC |
Tips untuk Word 2010
- Anda dapat meminta agar Anda diberitahukan oleh suara ketika tindakan tersedia (tak tersedia dalam Word Starter).Untuk mendengar audio isyarat, Anda harus memiliki kartu suara. Anda juga harus memiliki Microsoft Office Sounds diinstal pada komputer Anda.
- Jika Anda memiliki akses ke Internet, Anda dapat men-download Microsoft Office Sounds dari Office.com. Setelah Anda menginstal file suara, lakukan hal berikut:
- Tekan ALT + F, T untuk membuka Opsi Word.
- Tekan A untuk memilih Advanced, dan kemudian tekan Tab untuk pindah ke Advanced Options.
- Tekan ALT + S dua kali untuk pindah ke menyediakan umpan balik dengan suara kotak pada tab Umum , dan kemudian tekan spasi.
- Tekan Tab berulang kali untuk memilih OK, dan kemudian tekan Enter.
Catatan Ketika Anda memilih atau menghapus kotak centang ini, pengaturan yang mempengaruhi semua program Office yang mendukung suara.
Menavigasi pita
Mengakses setiap perintah dengan menggunakan beberapa penekanan tombol
Tombol akses membiarkan Anda dengan cepat menggunakan perintah dengan menekan beberapa kali menekan tombol, di manapun Anda berada dalam program. Setiap perintah di Word 2010 dapat diakses dengan menggunakan kunci akses.Anda dapat mengakses sebagian besar perintah dengan menggunakan dua sampai lima penekanan tombol. Untuk menggunakan kunci akses, ikuti langkah berikut:- Tekan ALT. KeyTips ditampilkan melalui setiap fitur yang tersedia pada tampilan yang aktif.
- Tekan huruf yang ditampilkan dalam KeyTip atas fitur yang ingin Anda gunakan.
- Tergantung pada mana huruf yang Anda tekan, Anda mungkin ditampilkan KeyTips tambahan. Misalnya, jika tab Beranda aktif dan Anda tekan N, tab Sisipkan ditampilkan, bersama dengan KeyTips untuk kelompok-kelompok tab itu.
- Terus menekan huruf sampai Anda menekan surat perintah atau kontrol yang ingin Anda gunakan. Dalam beberapa kasus, pertama Anda harus menekan huruf grup yang berisi perintah.
Catatan Untuk membatalkan tindakan yang Anda mengambil dan menyembunyikan KeyTips, tekan ALT.
Mengubah fokus kibor tanpa menggunakan mouse
Cara lain untuk menggunakan keyboard untuk bekerja dengan program yang menampilkan Office Ribbon adalah untuk memindahkan fokus antara tab dan perintah sampai Anda menemukan fitur yang ingin Anda gunakan. Tabel berikut mencantumkan beberapa cara untuk memindahkan fokus kibor tanpa menggunakan mouse.| Untuk melakukan hal ini | Tekan |
| Pilih tab aktif pita dan mengaktifkan tombol akses. | ALT atau F10. Tekan salah satu tombol-tombol ini lagi untuk kembali ke dokumen dan membatalkan tombol akses. |
| Pindah ke tab lain dari pita. | F10 untuk memilih tab aktif, kemudian panah kiri atau panah kanan |
| Membuka atau menutup pita. | CTRL + F1 |
| Menampilkan menu pintasan untuk item yang dipilih. | SHIFT + F10 |
Memindahkan fokus untuk memilih bidang-bidang berikut jendela:
| F6 |
| Memindahkan fokus ke setiap perintah pada pita, maju atau mundur. | Tab atau SHIFT + Tab |
| Bergerak turun, up, kiri atau kanan, di antara item pada pita. | DOWN ARROW, panah atas, panah kiri atau panah kanan |
| Mengaktifkan perintah yang dipilih atau kontrol pada pita. | SPACEBAR atau Enter |
| Buka menu yang dipilih atau Galeri pada pita. | SPACEBAR atau Enter |
| Mengaktifkan perintah atau kontrol pada pita sehingga Anda dapat mengubah nilai. | Masukkan |
| Menyelesaikan mengubah nilai dalam kontrol pada pita, dan memindahkan fokus kembali ke dokumen. | Masukkan |
| Mendapatkan bantuan pada perintah yang dipilih atau kontrol pada pita. Jika ada topik bantuan terkait dengan perintah yang dipilih, topik bantuan umum tentang program ditampilkan sebagai gantinya. | F1 |
Cepat referensi untuk Microsoft Word
Tugas umum di Microsoft Word
| Untuk melakukan hal ini | Tekan |
| Menciptakan ruang nonbreaking. | CTRL + SHIFT + SPASI |
| Membuat tanda hubung nonbreaking. | CTRL + SHIFT + TANDA HUBUNG |
| Membuat huruf tebal. | CTRL + B |
| Membuat huruf miring. | CTRL + I |
| Membuat huruf menggarisbawahi. | CTRL + U |
| Mengurangi nilai satu ukuran font. | CTRL + SHIFT + < |
| Meningkatkan nilai satu ukuran font. | CTRL + SHIFT + > |
| Mengurangi font ukuran 1 titik. | CTRL + [ |
| Meningkatkan font ukuran 1 titik. | CTRL +] |
| Menghapus karakter format atau paragraf. | CTRL + SPASI |
| Menyalin teks yang dipilih atau objek. | CTRL + C |
| Memotong teks dipilih atau objek. | CTRL + X |
| Sisipkan teks atau obyek. | CTRL + V |
| Paste khusus. | CTRL + ALT + V |
| Pasta format hanya | CTRL + SHIFT + V |
| Mengurungkan aksi terakhir. | CTRL + Z |
| Mengulang aksi terakhir. | CTRL + Y |
| Membuka kotak dialog Jumlah kata . | CTRL + Y |
Bekerja dengan dokumen dan halaman web
Membuat, melihat dan menyimpan dokumen
| Untuk melakukan hal ini | Tekan |
| Membuat dokumen baru. | CTRL + N |
| Membuka dokumen. | CTRL + O |
| Menutup dokumen. | CTRL + W |
| Membagi jendela dokumen. | ALT + CTRL + S |
| Menghapus split jendela dokumen. | ALT + SHIFT + C, atau ALT + CTRL + S |
| Simpan dokumen. | CTRL + S |
Menemukan, mengganti dan menelusuri teks
| Untuk melakukan hal ini | Tekan |
| Buka panel tugas navigasi (untuk mencari dokumen). | CTRL + F |
| Ulangi menemukan (setelah menutup jendela Cari dan ganti ). | ALT + CTRL + Y |
| Menggantikan teks, format tertentu, dan barang-barang khusus. | CTRL + H |
| Pergi ke halaman, bookmark, catatan kaki, Meja, komentar, grafis, atau lokasi lain. | CTRL + G |
| Beralih antara empat lokasi yang Anda telah diedit. | ALT + CTRL + Z |
| Membuka daftar browse pilihan. Tekan tombol panah untuk memilih opsi, dan kemudian tekan ENTER untuk menelusuri dokumen dengan menggunakan opsi yang dipilih. | ALT + CTRL + HOME |
| Pindah ke objek browse sebelumnya (set di browse pilihan). | CTRL + PAGE UP |
| Pindah ke objek browse berikutnya (set di browse pilihan). | CTRL + PAGE DOWN |
Beralih ke tampilan lain
| Untuk melakukan hal ini | Tekan |
| Beralih ke tampilan tata letak cetak. | ALT + CTRL + P |
| Beralih ke tampilan garis besar. | ALT + CTRL + O |
| Beralih ke tampilan Draft. | ALT + CTRL + N |
Lihat garis besar
| Untuk melakukan hal ini | Tekan |
| Mempromosikan sebuah paragraf. | ALT + SHIFT + PANAH KIRI |
| Menurunkan ayat. | ALT + SHIFT + PANAH KANAN |
| Menurunkan tubuh teks. | CTRL + SHIFT + N |
| Naik paragraf yang dipilih. | ALT + SHIFT + PANAH ATAS |
| Menurunkan paragraf yang dipilih. | ALT + SHIFT + PANAH BAWAH |
| Memperluas teks di bawah judul. | ALT + SHIFT + TANDA TAMBAH |
| Runtuhnya teks di bawah judul. | ALT + SHIFT + TANDA KURANG |
| Membuka atau menutup semua teks atau judul. | ALT + SHIFT + A |
| Menyembunyikan atau menampilkan karakter format. | Slash (/) tombol pada keypad numerik |
| Menunjukkan baris pertama dari teks tubuh atau semua teks tubuh. | ALT + SHIFT + L |
| Tampilkan semua judul dengan gaya menuju 1. | ALT + SHIFT + 1 |
| Tampilkan semua judul sampai menuju n. | ALT + SHIFT +n |
| Masukkan karakter tab. | CTRL + TAB |
Dokumen cetak dan Tinjauan
| Untuk melakukan hal ini | Tekan |
| Mencetak dokumen. | CTRL + P |
| Beralih ke print preview. | ALT + CTRL + I |
| Bergerak di sekitar halaman pratinjau ketika diperbesar. | Tombol panah |
| Memindahkan halaman pratinjau satu ketika diperbesar. | PAGE UP atau PAGE DOWN |
| Pindah ke halaman pratinjau pertama ketika diperbesar. | CTRL + HOME |
| Memindahkan terakhir halaman pratinjau ketika diperbesar. | CTRL + END |
Meninjau dokumen
| Untuk melakukan hal ini | Tekan |
| Masukkan komentar. | ALT + CTRL + M |
| Mengaktifkan pelacakan atau menonaktifkan perubahan. | CTRL + SHIFT + E |
| Tutup panel meninjau jika terbuka. | ALT + SHIFT + C |
Tampilan membaca layar penuh
Catatan Beberapa pembaca layar mungkin tidak kompatibel dengan pemandangan membaca layar penuh.
| Untuk melakukan hal ini | Tekan |
| Pergi ke awal dokumen. | RUMAH |
| Pergi ke bagian akhir dokumen. | AKHIR |
| Pergi ke halaman n. | n, masukkan |
| Keluar layout tampak baca. | ESC |
Referensi, catatan kaki dan catatan akhir
| Untuk melakukan hal ini | Tekan |
| Tandai entri daftar isi. | ALT + SHIFT + O |
| Tandai tabel otoritas entri (kutipan). | ALT + SHIFT + I |
| Tandai entri indeks. | ALT + SHIFT + X |
| Masukkan catatan kaki. | ALT + SHIFT + F |
| Masukkan situs. | ALT + SHIFT + D |
Bekerja dengan halaman web
| Untuk melakukan hal ini | Tekan |
| Masukkan hyperlink. | CTRL + K |
| Kembali satu halaman. | ALT + PANAH KIRI |
| Pergi ke depan satu halaman. | ALT + PANAH KANAN |
| Refresh. | F9 |
Mengedit dan memindahkan teks dan grafis
Menghapus teks dan grafis
| Untuk melakukan hal ini | Tekan |
| Menghapus satu karakter ke kiri. | BACKSPACE |
| Menghapus satu kata ke kiri. | CTRL + BACKSPACE |
| Menghapus satu karakter ke kanan. | HAPUS |
| Menghapus satu kata ke kanan. | CTRL + DELETE |
| Memotong teks yang dipilih ke papan-klip kantor. | CTRL + X |
| Mengurungkan aksi terakhir. | CTRL + Z |
| Memotong ke lonjakan. | CTRL + F3 |
Menyalin dan memindahkan teks dan grafis
| Untuk melakukan hal ini | Tekan |
| Membuka kantor Clipboard. | Tekan ALT + H untuk pindah ke rumah tab, dan kemudian tekan F, O |
| Menyalin teks yang dipilih atau grafis ke Clipboard kantor. | CTRL + C |
| Memotong dipilih teks atau grafis ke Clipboard kantor. | CTRL + X |
| Sisipkan Pemesanan penambahan atau disisipkan item dari Clipboard kantor. | CTRL + V |
| Memindahkan teks atau grafis satu kali. | F2 (kemudian menggerakkan kursor dan tekan ENTER) |
| Menyalin teks atau grafis satu kali. | SHIFT + F2 (kemudian menggerakkan kursor dan tekan ENTER) |
| Ketika teks atau obyek yang dipilih, membuka kotak dialog membuat blok bangunan baru . | ALT + F3 |
| Ketika blok bangunan - misalnya, SmartArt grafis - dipilih, Menampilkan menu pintasan yang berhubungan dengan itu. | SHIFT + F10 |
| Memotong ke lonjakan. | CTRL + F3 |
| Paste isi Spike. | CTRL + SHIFT + F3 |
| Salin header atau footer yang digunakan dalam bagian sebelumnya dari dokumen. | ALT + SHIFT + R |
Menyisipkan karakter khusus
| Untuk memasukkan ini | Tekan |
| Bidang | CTRL + F9 |
| Pemutus baris | SHIFT + ENTER |
| Page break | CTRL + ENTER |
| Istirahat kolom | CTRL + SHIFT + ENTER |
| Em dash | ALT + CTRL + TANDA KURANG |
| En dash | CTRL + TANDA MINUS |
| Tanda hubung opsional | CTRL + TANDA HUBUNG |
| Tanda hubung nonbreaking | CTRL + SHIFT + TANDA HUBUNG |
| Ruang nonbreaking | CTRL + SHIFT + SPASI |
| Simbol hak cipta | ALT + CTRL + C |
| Simbol merek dagang terdaftar | ALT + CTRL + R |
| Simbol merek dagang | ALT + CTRL + T |
| Elipsis | ALT + CTRL + PERIODE |
| Tanda kutip tunggal pembukaan | CTRL + '(single tanda petik),' (tanda petik tunggal) |
| Tanda kutip tunggal penutupan | CTRL + '(single tanda petik),' (tanda petik tunggal) |
| Tanda kutip ganda pembukaan | CTRL +'(tanda petik tunggal), SHIFT +'(single quotation mark) |
| Tanda kutip ganda penutupan | CTRL +'(tanda petik tunggal), SHIFT +'(single quotation mark) |
| Entri AutoTeks | Masukkan (setelah Anda mengetik beberapa karakter pertama dari nama entri AutoTeks dan ketika ScreenTip muncul) |
Menyisipkan karakter dengan menggunakan kode karakter
| Untuk melakukan hal ini | Tekan |
| Masukkan karakter Unicode untuk kode (heksadesimal) karakter Unicode yang ditentukan. Misalnya, untuk menyisipkan simbol mata uang euro, ketik 20AC, kemudian menekan ALT dan tekan X. | Kode karakter, ALT + X |
| Mencari kode karakter Unicode karakter yang dipilih. | ALT + X |
| Masukkan karakter ANSI untuk kode ANSI (desimal) karakter tertentu. Misalnya, untuk menyisipkan simbol mata uang euro, menekan ALT dan tekan 0128 pada keypad numerik. | ALT +kode karakter(pada keypad numerik) |
Pilih teks dan grafis
Pilih teks dengan menekan SHIFT dan menggunakan tombol panah untuk memindahkan kursor.Memperluas seleksi
| Untuk melakukan hal ini | Tekan |
| Giliran mode yang diperpanjang pada. | F8 |
| Pilih karakter terdekat. | F8, dan kemudian tekan panah kiri atau panah kanan |
| Meningkatkan ukuran pilihan. | F8 (Tekan satu kali untuk memilih sebuah kata, dua kali untuk memilih sebuah kalimat, dan sebagainya) |
| Mengurangi ukuran pilihan. | SHIFT + F8 |
| Giliran mode yang diperpanjang. | ESC |
| Memperluas seleksi satu karakter ke kanan. | SHIFT + PANAH KANAN |
| Memperluas seleksi satu karakter ke kiri. | SHIFT + PANAH KIRI |
| Memperluas seleksi ke akhir kata. | CTRL + SHIFT + PANAH KANAN |
| Memperluas seleksi ke awal sebuah kata. | CTRL + SHIFT + PANAH KIRI |
| Memperluas seleksi ke akhir baris. | SHIFT + END |
| Memperluas seleksi ke awal baris. | SHIFT + HOME |
| Memperluas seleksi satu baris ke bawah. | SHIFT + PANAH BAWAH |
| Memperluas seleksi satu berbaris. | SHIFT + PANAH ATAS |
| Memperluas seleksi ke akhir paragraf. | CTRL + SHIFT + PANAH BAWAH |
| Memperluas seleksi ke bagian awal paragraf. | CTRL + SHIFT + PANAH ATAS |
| Memperluas seleksi satu layar bawah. | SHIFT + PAGE DOWN |
| Memperluas seleksi satu layar atas. | SHIFT + PAGE UP |
| Memperluas seleksi ke awal dokumen. | CTRL + SHIFT + HOME |
| Memperluas seleksi ke akhir dokumen. | CTRL + SHIFT + END |
| Memperluas seleksi ke akhir jendela. | ALT + CTRL + SHIFT + PAGE DOWN |
| Memperluas seleksi ke mencakup dokumen lengkap. | CTRL + A |
| Pilih vertikal blok teks. | CTRL + SHIFT + F8, dan kemudian menggunakan tombol panah; Tekan ESC untuk membatalkan mode pilihan |
| Memperluas seleksi ke lokasi tertentu dalam dokumen. | F8 + tombol panah; Tekan ESC untuk membatalkan mode pilihan |
Pilih teks dan grafis dalam tabel
| Untuk melakukan hal ini | Tekan |
| Pilih isi sel berikutnya. | TAB |
| Pilih isi sel sebelumnya. | SHIFT + TAB |
| Memperluas seleksi ke sel-sel yang berdekatan. | Tahan SHIFT dan tekan tombol panah berulang kali |
| Pilih kolom. | Gunakan tombol panah untuk memindahkan ke kolom atas atau bawah sel, dan kemudian lakukan salah satu berikut ini:
|
| Memperluas seleksi (atau blok). | CTRL + SHIFT + F8, dan kemudian menggunakan tombol panah; Tekan ESC untuk membatalkan mode bagian |
| Pilih salah satu tabel yang lengkap. | ALT + F5 pada keypad numerik (dengan NUM LOCK off) |
Bergerak melalui dokumen Anda
| Untuk memindahkan | Tekan |
| Satu karakter ke kiri | TANDA PANAH KIRI |
| Satu karakter ke kanan | TANDA PANAH KANAN |
| Satu kata ke kiri | CTRL + PANAH KIRI |
| Satu kata ke kanan | CTRL + PANAH KANAN |
| Satu paragraf atas | CTRL + PANAH ATAS |
| Salah satu ayat turun | CTRL + PANAH BAWAH |
| Satu sel ke kiri (dalam tabel) | SHIFT + TAB |
| Satu sel ke kanan (dalam tabel) | TAB |
| Satu baris | PANAH KE ATAS |
| Turun satu baris | TANDA PANAH BAWAH |
| Untuk akhir baris | AKHIR |
| Ke awal baris | RUMAH |
| Ke atas jendela | ALT + CTRL + PAGE UP |
| Ke ujung jendela | ALT + CTRL + PAGE DOWN |
| Satu layar (bergulir) | HALAMAN ATAS |
| Turun satu layar (bergulir) | PAGE DOWN |
| Untuk bagian atas halaman berikutnya | CTRL + PAGE DOWN |
| Untuk bagian atas halaman sebelumnya | CTRL + PAGE UP |
| Untuk akhir dokumen | CTRL + END |
| Untuk awal dokumen | CTRL + HOME |
| Untuk revisi sebelumnya | SHIFT + F5 |
| Setelah Anda membuka dokumen, pergi ke lokasi yang Anda bekerja di ketika dokumen terakhir ditutup | SHIFT + F5 |
Bergerak di meja
| Untuk memindahkan | Tekan |
| Sel berikutnya berturut-turut | TAB |
| Sel sebelumnya berturut-turut | SHIFT + TAB |
| Sel pertama berturut-turut | ALT + HOME |
| Untuk sel terakhir berturut-turut | ALT + END |
| Sel pertama dalam kolom | ALT + PAGE UP |
| Untuk sel terakhir pada kolom | ALT + PAGE DOWN |
| Untuk baris sebelumnya | PANAH KE ATAS |
| Ke baris berikutnya | TANDA PANAH BAWAH |
| Baris atas | ALT + SHIFT + PANAH ATAS |
| Baris ke bawah | ALT + SHIFT + PANAH BAWAH |
Masukkan paragraf dan karakter tab dalam tabel
| Untuk menyisipkan | Tekan |
| Paragraf baru dalam sel | MASUKKAN |
| Karakter tab dalam sel | CTRL + TAB |
Menggunakan mode Overtype
Untuk mengubah setelan Overtype sehingga Anda dapat mengakses Overtype mode dengan menekan INSERT, ikuti langkah berikut:- Tekan ALT + F, T untuk membuka Opsi Word.
- Tekan A untuk memilih ADVANCED, dan kemudian tekan TAB.
- Tekan ALT + O untuk pindah ke kotak centang Gunakan tombol Insert untuk modus kontrol overtype .
- Tekan spasi untuk memilih kotak, dan kemudian tekan ENTER.
Untuk mengaktifkan Overtype mode atau menonaktifkan, tekan masukkan.
Karakter dan format paragraf
Menyalin format
| Untuk melakukan hal ini | Tekan |
| Salin pemformatan dari teks. | CTRL + SHIFT + C |
| Menerapkan format disalin ke teks. | CTRL + SHIFT + V |
Mengubah atau mengubah ukuran font
Catatan Pintasan keyboard berikut tidak bekerja dalam modus membaca layar penuh.
| Untuk melakukan hal ini | Tekan |
| Membuka kotak dialog Font untuk mengubah font. | CTRL + SHIFT + F |
| Memperbesar ukuran font. | CTRL + SHIFT + > |
| Mengurangi ukuran font. | CTRL + SHIFT + < |
| Meningkatkan ukuran font dengan 1 poin. | CTRL +] |
| Mengurangi ukuran font dengan 1 poin. | CTRL + [ |
Menerapkan format karakter
| Untuk melakukan hal ini | Tekan |
| Membuka kotak dialog Font untuk mengubah format karakter. | CTRL + D |
| Mengubah kasus surat. | SHIFT + F3 |
| Format semua surat sebagai ibukota. | CTRL + SHIFT + A |
| Menerapkan format tebal. | CTRL + B |
| Menerapkan menggarisbawahi. | CTRL + U |
| Menggarisbawahi kata-kata tetapi tidak ruang. | CTRL + SHIFT + W |
| Kamar Double-menggarisbawahi teks. | CTRL + SHIFT + D |
| Menerapkan format teks tersembunyi. | CTRL + SHIFT + H |
| Menerapkan format miring. | CTRL + I |
| Format surat sebagai ibu kota kecil. | CTRL + SHIFT + K |
| Menerapkan subskrip format (otomatis spasi). | CTRL + TANDA SAMA DENGAN |
| Menerapkan superskrip format (otomatis spasi). | CTRL + SHIFT + TANDA TAMBAH |
| Menghapus karakter manual format. | CTRL + SPASI |
| Mengubah pilihan untuk font simbol. | CTRL + SHIFT + Q |
Melihat dan menyalin format teks
| Untuk melakukan hal ini: | Tekan: |
| Menampilkan karakter nonprinting. | CTRL + SHIFT + * (asterisk pada keypad numerik tidak bekerja) |
| Meninjau teks format. | SHIFT + F1 (kemudian klik teks dengan format Anda ingin meninjau) |
| Menyalin format. | CTRL + SHIFT + C |
| Sisipkan format. | CTRL + SHIFT + V |
Mengatur line spacing
| Untuk melakukan hal ini | Tekan |
| Single-Space baris. | CTRL + 1 |
| Double-Space baris. | CTRL + 2 |
| Terletak 1,5-line spasi. | CTRL + 5 |
| Menambah atau menghapus satu baris spasi sebelum sebuah paragraf. | CTRL + 0 (nol) |
Menyelaraskan paragraf
| Untuk melakukan hal ini | Tekan |
| Beralih antara terpusat dan selaras kiri paragraf. | CTRL + E |
| Beralih antara dibenarkan dan selaras kiri paragraf. | CTRL + J |
| Beralih paragraf antara rata-kanan dan kiri-selaras. | CTRL + R |
| Paragraf rata kiri. | CTRL + L |
| Takik paragraf dari kiri. | CTRL + M |
| Menghapus indentasi ayat dari kiri. | CTRL + SHIFT + M |
| Membuat takik menggantung. | CTRL + T |
| Mengurangi indentasi menggantung. | CTRL + SHIFT + T |
| Hapus format paragraf. | CTRL + Q |
Menerapkan gaya paragraf
| Untuk melakukan hal ini | Tekan |
| Buka panel tugas Menerapkan gaya . | CTRL + SHIFT + S |
| Buka panel tugas gaya . | ALT + CTRL + SHIFT + S |
| Mulai AutoFormat. | ALT + CTRL + K |
| Menerapkan gaya Normal. | CTRL + SHIFT + N |
| Menerapkan gaya menuju 1. | ALT + CTRL + 1 |
| Menerapkan gaya menuju 2. | ALT + CTRL + 2 |
| Menerapkan gaya menuju 3. | ALT + CTRL + 3 |
- Jika jendela tugas gaya tidak dipilih, tekan F6 untuk memilihnya.
- Tekan CTRL + spasi.
- Gunakan tombol panah untuk memilih dekat, dan kemudian tekan ENTER.
Memasukkan dan mengedit objek
Sisipkan obyek
Untuk menyisipkan obyek, ikuti langkah berikut:- Tekan ALT, N, J dan kemudian J untuk membuka kotak dialog objek .
- Lakukan salah satu berikut ini:
- Tekan panah bawah untuk memilih jenis objek, dan kemudian tekan ENTER untuk menciptakan suatu objek.
- Tekan CTRL + TAB untuk berpindah ke tab Buat dari berkas , tekan TAB, dan kemudian ketik nama file objek yang Anda inginkan untuk memasukkan atau browse ke file.
Mengedit obyek
Untuk mengedit obyek, ikuti langkah berikut:- Dengan kursor diposisikan di sebelah kiri dari objek dalam dokumen Anda, pilih objek dengan menekan SHIFT + panah kanan.
- Tekan SHIFT + F10.
- Tekan tombol TAB untuk mencapai nama objek, tekan ENTER, dan kemudian tekan ENTER lagi.
Masukkan SmartArt grafis
Untuk menyisipkan SmartArt grafis, ikuti langkah berikut:- Tekan dan lepaskan ALT, N dan kemudian M untuk memilih SmartArt.
- Tekan tombol panah untuk memilih jenis grafis yang Anda inginkan.
- Tekan TAB, dan kemudian tekan tombol panah untuk memilih grafik yang ingin Anda sisipkan.
- Tekan ENTER.
Masukkan WordArt
Untuk menyisipkan WordArt, ikuti langkah berikut:- Tekan dan lepaskan ALT, N dan W kemudian untuk memilih WordArt.
- Tekan tombol panah untuk memilih gaya WordArt yang Anda inginkan, dan kemudian tekan ENTER.
- Ketik teks yang Anda inginkan.
- Tekan ESC untuk memilih objek WordArt, dan kemudian gunakan tombol panah untuk memindahkan objek.
- Tekan ESC lagi untuk kembali ke dokumen.
Penggabungan e-mail dan bidang
Mengoperasikan gabungan surat
Catatan Anda harus pada tab Surat menggunakan cara pintas keyboard ini.
| Untuk melakukan hal ini | Tekan |
| Pratinjau gabungan surat. | ALT + SHIFT + K |
| Menggabungkan dokumen. | ALT + SHIFT + N |
| Mencetak dokumen yang digabung. | ALT + SHIFT + M |
| Mengedit dokumen data gabungan surat. | ALT + SHIFT + E |
| Sisipkan kolom gabungan. | ALT + SHIFT + F |
Bekerja dengan bidang
| Untuk melakukan hal ini | Tekan |
| Masukkan bidang tanggal. | ALT + SHIFT + D |
| Masukkan bidang LISTNUM. | ALT + SHIFT + L |
| Masukkan PAGE field. | ALT + SHIFT + P |
| Masukkan bidang TIME. | ALT + SHIFT + T |
| Masukkan bidang kosong. | CTRL + F9 |
| Memperbarui informasi terkait di sumber dokumen Word. | CTRL + SHIFT + F7 |
| Update bidang yang dipilih. | F9 |
| Menghapus tautan bidang. | CTRL + SHIFT + F9 |
| Beralih antara kode kolom dan hasilnya. | SHIFT + F9 |
| Beralih antara semua kode lapangan dan hasil mereka. | ALT + F9 |
| Menjalankan GOTOBUTTON atau MACROBUTTON dari lapangan yang menampilkan hasil bidang. | ALT + SHIFT + F9 |
| Pergi ke bidang berikutnya. | F11 |
| Pergi ke bidang sebelumnya. | SHIFT + F11 |
| Mengunci bidang. | CTRL + F11 |
| Membuka lapangan. | CTRL + SHIFT + F11 |
Bilah bahasa
Pengenalan tulisan tangan
| Untuk melakukan hal ini | Tekan |
| Beralih di antara bahasa atau layout keyboard. | ALT kiri + SHIFT |
| Menampilkan daftar alternatif koreksi. | |
| Mengaktifkan atau mematikan tulisan tangan. | |
| Mengaktifkan Jepang masukan metode Editor (nama) pada keyboard 101 atau mematikan. | ALT + ~ |
| Aktifkan IME Korea 101 keyboard atau mematikan. | ALT kanan |
| Aktifkan Cina IME 101 keyboard atau mematikan. | CTRL + SPASI |
- Anda dapat memilih cara pintas keyboard untuk beralih di antara bahasa atau layout keyboard di kotak dialogPengaturan kunci lanjutan . Untuk membuka kotak dialog Pengaturan kunci lanjutan , klik-kanan bilah bahasa , dan kemudian klik pengaturan. Di bawah preferensi, klik Tombol pengaturan.
- Tombol logo Windows tersedia di baris bawah tombol pada sebagian besar kibor.
Fungsi kunci referensi
Tombol fungsi
| Untuk melakukan hal ini | Tekan |
| Mendapatkan bantuan atau pergi ke Microsoft Office.com. | F1 |
| Memindahkan teks atau grafis. | F2 |
| Mengulangi aksi terakhir. | F4 |
| Pilih Go To perintah (Home tab). | F5 |
| Pergi ke panel atau bingkai berikutnya. | F6 |
| Pilih perintah ejaan (Review tab). | F7 |
| Memperluas seleksi. | F8 |
| Perbarui bidang yang dipilih. | F9 |
| Tampilkan KeyTips. | F10 |
| Pergi ke bidang berikutnya. | F11 |
| Pilih perintah Save As . | F12 |
Tombol SHIFT + fungsi
| Untuk melakukan hal ini | Tekan |
| Mulai context-sensitive bantuan atau mengungkapkan format. | SHIFT + F1 |
| Menyalin teks. | SHIFT + F2 |
| Mengubah kasus surat. | SHIFT + F3 |
| Ulangi tindakan yang menemukan atau Pergi untuk . | SHIFT + F4 |
| Memindahkan terakhir perubahan. | SHIFT + F5 |
| Pergi ke panel sebelumnya atau bingkai (setelah Anda menekan F6). | SHIFT + F6 |
| Pilih perintah Thesaurus (Review tab, kelompok Proofing ). | SHIFT + F7 |
| Mengurangi ukuran pilihan. | SHIFT + F8 |
| Beralih antara kode lapangan dan hasilnya. | SHIFT + F9 |
| Menampilkan menu pintasan. | SHIFT + F10 |
| Pergi ke bidang sebelumnya. | SHIFT + F11 |
| Pilih perintah Save . | SHIFT + F12 |
Tombol CTRL + fungsi
| Untuk melakukan hal ini | Tekan |
| Membuka atau menutup pita. | CTRL + F1 |
| Pilih perintah Pratinjau cetak . | CTRL + F2 |
| Memotong ke lonjakan. | CTRL + F3 |
| Tutup jendela. | CTRL + F4 |
| Pergi ke jendela berikutnya. | CTRL + F6 |
| Masukkan bidang kosong. | CTRL + F9 |
| Memaksimalkan jendela dokumen. | CTRL + F10 |
| Mengunci bidang. | CTRL + F11 |
| Pilih perintah terbuka . | CTRL + F12 |
Tombol CTRL + SHIFT + fungsi
| Untuk melakukan hal ini: | Tekan |
| Menyisipkan isi Spke. | CTRL + SHIFT + F3 |
| Mengedit bookmark. | CTRL + SHIFT + F5 |
| Pergi ke jendela sebelumnya. | CTRL + SHIFT + F6 |
| Memperbarui informasi terkait di Word 2010 dokumen sumber. | CTRL + SHIFT + F7 |
| Memperluas pilihan atau blok. | CTRL + SHIFT + F8, dan kemudian tekan tombol panah |
| Menghapus tautan bidang. | CTRL + SHIFT + F9 |
| Membuka lapangan. | CTRL + SHIFT + F11 |
| Pilih perintah cetak . | CTRL + SHIFT + F12 |
Tombol ALT + fungsi
| Untuk melakukan hal ini | Tekan |
| Pergi ke bidang berikutnya. | ALT + F1 |
| Membuat blok bangunan baru. | ALT + F3 |
| Keluar Word 2010. | ALT + F4 |
| Mengembalikan ukuran jendela program. | ALT + F5 |
| Kembali dari kotak dialog yang terbuka ke dokumen, untuk kotak dialog yang mendukung perilaku ini. | ALT + F6 |
| Menemukan berikutnya misspelling atau tata bahasa kesalahan. | ALT + F7 |
| Menjalankan makro. | ALT + F8 |
| Beralih antara semua kode lapangan dan hasil mereka. | ALT + F9 |
| Menampilkan jendela tugas seleksi dan visibilitas . | ALT + F10 |
| Menampilkan kode Microsoft Visual Basic. | ALT + F11 |
Tombol ALT + SHIFT + fungsi
| Untuk melakukan hal ini | Tekan |
| Pergi ke bidang sebelumnya. | ALT + SHIFT + F1 |
| Pilih perintah Save . | ALT + SHIFT + F2 |
| Menampilkan jendela tugas penelitian . | ALT + SHIFT + F7 |
| Menjalankan GOTOBUTTON atau MACROBUTTON dari lapangan yang menampilkan hasil bidang. | ALT + SHIFT + F9 |
| Menampilkan menu atau pesan untuk tindakan yang tersedia. | ALT + SHIFT + F10 |
| Pilih tombol Isi dalam wadah isi saat wadah aktif. | ALT + SHIFT + F11 |
Tombol CTRL + ALT + fungsi
| Untuk melakukan hal ini | Tekan |
| Menampilkan informasi sistem Microsoft. | CTRL + ALT + F1 |
| Pilih perintah terbuka . | CTRL + ALT + F2 |
terima kasih kak Galuh Ahmad : http://wwwpengentauaja.blogspot.com
