Tuesday, December 5, 2006

Source Code Mengosongkan RecycleBin

Pengen bikin program sendiri buat ngehapus file-file yang ada di recycle bin? Tanpa harus masuk explorer, alias bereksperimen sendiri? Gampang, neh ada source code yang bisa kalian pake buat nambah-nambah elmu and skill...heheh...mulai aja deh..

Ketikan code ini pada Module
Const SHERB_NOCONFIRMATION = &H1
Const SHERB_NOPROGRESSUI = &H2
Const SHERB_NOSOUND = &H4

Private Type ULARGE_Integer
LowPart As Long
HighPart As Long
End Type

Private Type SHQUERYRBINFO
cbSize As Long
i64Size As ULARGE_Integer
i64NumItems As ULARGE_Integer
End Type

Private Declare Function SHEmptyRecycleBin Lib "shell32.dll" _
Alias "SHEmptyRecycleBinA" (Byval hwnd As Long, _
Byval pszRootPath As String, Byval dwFlags As Long) As Long
Private Declare Function SHUpdateRecycleBinIcon Lib "shell32.dll" () As Long
Private Declare Function SHQueryRecycleBin Lib "shell32.dll" Alias _
"SHQueryRecycleBinA" (Byval pszRootPath As String, _
pSHQueryRBInfo As SHQUERYRBINFO) As Long

Tambahkan satu buah form, kemudian ketikan source code dibawah, atau kalian bisa men-copy pastenya langsung :

Private Sub Form_Load()
Dim RBinInfo As SHQUERYRBINFO, Msg As VbMsgBoxResult
RBinInfo.cbSize = Len(RBinInfo)
SHQueryRecycleBin vbnullString, RBinInfo
Msg = MsgBox("Kosongkan Recycle Bin?", vbYesNo + vbQuestion)
If Msg = vbYes Then
SHEmptyRecycleBin Me.hwnd, vbnullString, 0
SHUpdateRecycleBinIcon
End If
End Sub

Sunday, November 19, 2006

Program Shutdown,Restart, LogOff

Dalam tulisan ini berisi code tentang shutdown, restart, dan logoff yang langsung dilakukan di form Visual Basic dimana sumber berasal dari VBCODE yang gue kembangin sendiri, cuma sedikit ajah seh sekdar pengetahuan...

So...loe bisa ngembangin lagi biar tambah sempurna, di program kali neh, loe butuh yang namanya satu form, terus 3 buah command button, atau loe bisa ganti dengan apa gitu, bebas deghhh...

neh source code nya (lagi2 gue nyadur dari vbbego comunity man, tp gue kembangin...(by:tebe)

Private Sub cmdLog_Click()
Dim Log As String
Log = MsgBox("Loe Pengen LogOff Yaph.. ?", vbYesNo, "Nanya Nech...!!!")
If Log = vbYes Then
'LOGOFF:
Shell "shutdown -l -f -t 0"//untuk manggil fungsi Loging Off dari system
Else
MsgBox "Ngak Jadi Log Off...!!!", vbInformation, "Informasi"
End If
End Sub

Private Sub cmdRestart_Click()
Dim Aku As String
Aku = MsgBox("Loe Pengen Restart ?", vbYesNo, "Nanya Nech...!!!")
If Aku = vbYes Then
'RESTART
Shell "shutdown -r -f -t 0"//untuk manggil fungsi restrat dari system
Else
MsgBox "Ngak Jadi Restart...!!!", vbInformation, "Informasi"
End If
End Sub

Private Sub cmdShutdown_Click()
Dim Cinta As String
Cinta = MsgBox("Loe Beneran Pengen Shutdown ?", vbYesNo, "Nanya Nech...!!!")
If Cinta = vbYes Then
'SHUTDOWN
Shell "shutdown -s -f -t 0"//untuk manggil fungsi shutdown dari system
Else
MsgBox "Ngak Jadi Shutdown...!!!", vbInformation, "Informasi"
End If
End Sub

Friday, November 17, 2006

Menguraikan File Besar Menjadi Kecil

Untuk mengecilkan file dengan menggunakan Visual Basic, gampang kok...yang penting EnTe2 semua bisa dan familiar dengan Bahasa Pemrograman Visual Basic, versi apa ajah, terutama tentang fungsi API dan Pembuatan modul, so..neh dia source code nya, ente cuma perlu satu buah form ajah sekedar buat latihan, selainnya bisa loe kembangin sendiri deh biar jadi program yang lebih baik.. (gue sadur dari vbbego comunity neh : tebe)


Option Explicit

Function SplitFile(nPath As String, nFileName As String, _
SizePerFile As Long) As Boolean

On Error GoTo Salah
Dim LenFile As Long ' Ukuran file
Dim CountFile As Long ' Jumlah File
Dim LastSize As Long ' Ukuran File Terakhir, jika ada
Dim CntOfFile As Long ' Loop variable
Dim PosFile As Long ' Posisi pointer file
Dim inBatch As String ' Membuat batch commAnd untuk penggabungan kembali
Dim unsplitDir As String ' Direktori hasil penguraian
Dim Data() As Byte ' Data pada file yang diambil

'/ Periksa apakah karakter terakhir adalah '\'
nPath = Iif(Right(nPath, 1) = "\", nPath, nPath & "\")
'/ Ambil ukuran file yang akan diuraikan
LenFile = FileLen(nPath & nFileName)
'/ Bagi ukuran file dengan besar file yang akan di uraikan
CountFile = Fix(LenFile / SizePerFile)
'/ Apakah ada yang tersisa pada pembagian file
LastSize = LenFile - (SizePerFile * CountFile)

'/ Beri nilai awal pointer file dengan nilai 1
PosFile = 1
'/ Buat direktori untuk penguraian file
unsplitDir = nPath & "unsplit_" & nFileName & "\"
If Dir(unsplitDir, vbNormal + vbDirectory) = "" Then MkDir unsplitDir

'/ Buka file yang akan diuraikan dengan binary Type
Open nPath & nFileName For Binary As #1
'/ Buat file batch dengan nama 'unsplit.bat'
Open unsplitDir & "unsplit.bat" For Output As #2
'/ Cetak header batch file
Print #2, "@echo off"
Print #2, "echo SpliFile Created 2005 by vbBeGo Team"
Print #2, "echo Reading split files..."
Print #2, "pause"

'/ Lakukan pengulangan sebanyak jumlah file yg diuraikan
For CntOfFile = 1 To CountFile
'/ lakukan Dim ulang sesuai dengan besar file yang akan diurakan
ReDim Data(1 To SizePerFile) As Byte
'/ Ambil data pada file sesuai dengan posisi pointer
Get #1, PosFile, Data
'/ Buat bagian2 file baru, hasil penguraian
Open unsplitDir & Format(CntOfFile, "00#") & ".spl" For Binary As #3
Put #3, , Data
Close #3
'/ Buat batch commAnd untuk nantinya digunakan sebagai penggabungan
inBatch = inBatch & Format(CntOfFile, "00#") & ".spl" & " + "
'/ Tambahkan posisi pointer sebesar ukuran file yang diuraikan
PosFile = PosFile + SizePerFile
Next CntOfFile

'/ Periksa apakah ada sisa pada saat penguraian dilakukan
If LastSize > 0 Then
'/ jika ya maka, reDim data sebanyak jumlah yg tersisa
ReDim Data(1 To LastSize) As Byte
Get #1, PosFile, Data
Open unsplitDir & Format(CntOfFile, "00#") & ".spl" For Binary As #3
Put #3, , Data
Close #3
inBatch = inBatch & Format(CntOfFile, "00#") & ".spl" & " + "
End If
inBatch = Mid(inBatch, 1, Len(inBatch) - 3)
'/ Cetak perintah pada batch file
Print #2, "copy /b " & inBatch & " " & Chr(34) & nFileName & Chr(34)
Close #2
Close #1
SplitFile = True
Salah:
End Function

Private Sub Form_Load()
If SplitFile("C:\", "Server2.exe", 102400) Then ' 100KB
MsgBox "penguraian file berhasil", 64
Else
MsgBox "penguraian file gagal", 16
End If
End
End Sub