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