Glitter Graphics | http://www.graphicsgrotto.com/

This is default featured slide 1 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 3 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

Monday

Cara Mengoptimalkan Baterai Laptop Yang Mudah


Cara Mengoptimalkan Baterai Laptop Yang Mudah

Baterai laptop? Jangan salah bukan baterai senter atau baterai radio yang murah. Jika baterai laptop sampai rusak, harganya pun cukup mahal dibandingkan dengan baterai senter xixi kecuali harga baterai senternya astronot dijamin lebih mahal dari baterai manapun haha lha kalo kehabisan baterai di bulan masak ya mampir di pasar Genteng Surabaya :-D
Oleh karena itulah, baterai laptop Anda harus dijaga dengan baik. Jangan sampai kita tidak mengetahui cara merawat baterai laptop. Agar performa baterai laptop Anda awet dan tahan lama, tidak cepat panas dan memiliki umur yang panjang dan tidak meledak! (serius nih, ada baterai laptop yang dapat meledak karena salah pemakaian) maka lakukanlah beberapa cara optimalisasi baterai laptop yang mudah berikut ini :
  1. Pastikan voltase dan ampere charger laptop Anda sesuai dengan spesifikasi laptop Anda. Adaptor sangat berpengaruh terhadap daya tahan baterai. Maka gunakanlah charger original jangan yang abal-abal. Karena dapat merusak baterai laptop karena daya listrik yang tidak seusai.
  2. Jika baterai dicharge sudah penuh, segera lepaskan charge baterai. Karena lama-kelamaan jika masih tetap ditancapkan akan mengurangi usia baterai bahkan bisa meledak (kabarnya baterai laptop sekarang sudah aman dari hal ini, tetapi toh sesuatu yang berlebihan itu tidak baik bukan?)
  3. Aktifkan icon baterai di taskbar agar Anda dapat mengontrol kondisi baterai laptop Anda.
  4. Manfaatkan layanan power option di bagian control panel windows Anda karena dapat membantu untuk mengoptimalkan kinerja baterai. Setting pada opsi portable atau laptop.
  5. Jangan membiarkan baterai Anda dalam kondisi kosong terlalu lama. Karena hal ini dapat merusak cell baterai.
Semoga bermanfaat iia teman.....

Friday

7 Software Termahal Di Dunia

Artikel AutoCAD. - Salah satu software paling mahal di dunia berikut sebaiknya tidak ada salahnya menjadi koleksi di komputer Anda.
Software-software ini tidak hanya memiliki fitur yang besar, tetapi juga dapat beroperasi dengan cepat di komputer, terutama bila Anda melakukan pekerjaan proyek yang penting. Tapi bagaimana dengan biayanya? Setidaknya, Anda harus tahu terlebih dahulu dengan membaca daftar software-sofware tersebut.

10. Macromedia ColdFusion MX: harga sekitar 5000 USD

Macromedia MX ColdFuison dibangun kembali dari dasar dan didasarkan pada platform Java EE.
Ini adalah salah satu perangkat lunak yang paling mahal di dunia yang harganya ditandai sekitar $ 5000. Software ini dirancang untuk mengintegrasikan secara baik dengan menggunakan Macromedia Flash Remoting Flash.





9. AutoCAD: harga Sekitar 8,500 USD


AutoCAD adalah sebuah perangkat lunak aplikasi CAD untuk desain 2D dan 3D. AutoCAD adalah salah satu perangkat lunak yang paling mahal di dunia yang dikembangkan dan dijual oleh Autodesk, Inc. Software ini salah satu program CAD pertama yang harganya ditandai sekitar 8,500 USD, kini software tersebut memiliki 2 platform yaitu dapat berjalan di OS Windows dan Mac.



8. Adobe Font Folio 11,0 : sekitar 8,789 USD

Adobe Font Folio dirilis pada bulan September tahun 2007, Software ini menggembar-gemborkan lebih dari 2300 font di dalamnya. Ini adalah salah satu perangkat lunak yang paling mahal di dunia yang memuat bentuk font yang membuat software tersebut menjadi perpustakaan di bawah sepertiga dari total font yang ada, yang semuanya termasuk dalam Font Folio. Harga untuk software ini menjadikan salah satu perangkat lunak yang paling mahal ditandai sekitar 8,789 USD.




7. Maya : Sekitar 11,000 USD

Autodesk Maya adalah perangkat lunak komputer grafis 3D yang berjalan pada Microsoft Windows, Mac OS dan Linux. Software ini adalah salah satu perangkat lunak yang paling mahal di dunia yang pada awalnya dikembangkan oleh Corporation Alias ​​Systems. Harganya sekitar 11,000 USD.

6. Adobe Acrobat Capture 3: Sekitar 20,000 USD
Adobe Acrobat Capture 3 dirilis pada November tahun1996. Software Ini merupakan salah satu perangkat lunak yang paling mahal di dunia yang dilengkapi dengan dukungan versi PDF 1.2,  free-searching reader, Acrobat katalog dan driver printer. Semua fitur tersebut bisa didapatkan seharga 20,000 USD.











5. CORE Impact Pro : Sekitar 50,000 USD

CORE Impact Pro diproduksi oleh Perusahaan pengaturan Core Security yang menyediakan IT pengujian keamanan dan produk pengukuran layana perangkat lunak. Software ini adalah salah satu perangkat lunak yang paling mahal di dunia yang dirilis pada tahun 2002 sebagai versi pertama.

4. Softimage Face Robot : Sekitar 95,000 USD
Softimage Face Robot adalah sebuah aplikasi komputer grafis 3D, yang dimiliki oleh Autodesk. Software ini adalah salah satu perangkat lunak yang paling mahal di dunia yang digunakan dalam industri film, video game, dan periklanan untuk menciptakan karakter yang dihasilkan komputer, benda, dan lingkungan sekitarnya.

3. Renderware SDK : Sekitar 190,000 USD
SDK Renderware adalah sebuah API grafis mesin render 3D yang digunakan dalam video game, Aktifitas animasi dan beberapa browser VRML. Software ini merupakan salah satu perangkat lunak yang paling mahal di dunia yang dikembangkan oleh Criterion Software Limited dan berasal dari Era software rendering pada PC sebelum munculnya GPUs.

2. VxWorks : Seharga 199,000 USD
VxWorks adalah sistem operasi real-time yang dibuat dan dijual oleh Wind River Sistems. Software ini merupakan salah satu perangkat lunak yang paling mahal di dunia yang dirancang untuk digunakan dalam sistem embedded. Pengembangannya dilakukan pada mesin "host" yang menjalankan Linux, Unix, atau Microsoft Windows.



1. CryEngine2 : kisaran 200,000 USD

CryEngine 2 mesin game yang digunakan untuk komputer first-person shooter game Far Cry. Software ini adalah salah satu perangkat lunak yang paling mahal dalam abad perkembangan software. Dikembangkan oleh Crytek sebagai demo teknologi untuk NVIDIA. Lalu, ketika perusahaan melihat potensinya, bukannya berguna untuk NVIDIA, ternyata menjadi sebuah permainan (Gaming).

(Terjemahan dari mostexpensiveofthings.com)

Thursday

Alasan Mengapa Laptop Harus dioptimalisasi



Ada banyak alasan mengapa laptop yang Anda miliki harus dioptimalisasi.
Alasan pertama, laptop yang dibeli bukanlah laptop high-end, alias laptop ekonomis.
Alasan kedua, laptop itu sudah terlalu terbebani oleh banyaknya file sampah.
Yang ketiga, laptop itu belum menampilkan performa maksimalnya dan harus dipacu memakai software khusus.
Yang keempat, Anda tidak punya software untuk membuat agar laptop Anda menjadi lebih canggih.
Membahas secara ringan, santai, dan sederhana tentang cara-cara mengoptimalkan laptop. Tidak ada modifikasi hardware dan tidak ada pula `oprek` software. Semuanya menggunakan software yang telah disediakan di dalam Bonus CD. Bonus CD menyediakan banyak software Full Version senilai lebih dari Rp1 jutaan yang bisa langsung Anda manfaatkan, seperti AShampoo Internet Accelerator, AShampoo HDD Control, AShampoo WinOptimizer, dan AShampoo Uninstaller 2010. Semuanya gratis dan Full Version, khusus buat Anda pembaca buku ini. Semoga dengan adanya software-software di atas, laptop Anda semakin kencang dan semakin canggih.

Monday

Optimalisasi Pada Windows 7


Optimaisasi Pada Windows 7

Kinerja computer saat ini menjadi hal yang penting bagi pengguna computer. Computer yang kinerjanya lambat bisa saja membuat penggunanya enggan untuk berlama-lama di depan computer. Sebaliknya computer dengan kinerja yang prima membuat penggunanya akan menjadi betah untuk bekerja didepan computer. Pada kesempatan yang lalu, saya pernah memberikan sebuah trik untuk mengoptimalkan computer pada windows xp.

Berikut ini adalah trik yang hampir sama, hanya saja trik ini untuk windows 7 (seven) yaitu meningkatkan kinerja atau optimasi windows 7 :
  1. Matikan efek-efek yang tidak penting, setting best performance
    Visual efek ini memang untuk menambah keindahan tampilan, baik pada windows xp maupun windows 7. Akan tetapi hal ini juga mempengaruhi kinerja computer. Apabila efek visual ini dinonaktifkan, maka kinerja computer akan bertambah cepat. Untuk menonaktifkan visual efek tadi, caranya adalah : Klik kanan pada [Computer] > klik [properties] > klik [Advance system setting] > pada bagian performance klik tombol [setting] sehingga muncul jendela Performance Options. Klik[adjust for best performance]. ( Kalau saya lebih suka menghilangkan semua tanda centang, kecuali pada dua opsi paling bawah saya centang ). kemudian klik [OK]

  2. Mengoptimalkan hard disk.
    Maksudnya ialah, bahwa hard disk ( khususnya pada drive C: ) jika sisa ruang kosong yang tersedia sedikit tentu akan membuat kinerja windows lambat. Biasanya yang menyebabkan kapasitas hard disk berkurang adalah adanya point system restore. Setiap ada perubahan pada windows, biasanya akan membuat point system restore. Semakin banyak point restore yang dibuat maka kapasitas hard disk akan berkurang. Karena system restore ini juga berguna suatu saat windows terjadi error, maka tetap kita pergunakan. Nah biar tidak selalu menghapus point restore yang sudah terlalu lama, maka sebaiknya kita atur kapasitas hard disk yang akan digunakan sebagai restore point. Caranya adalah sebagai berikut :
    Klik kanan [Computer] > pilih [Properties] > klik [System Protection] > klik pada tombol [Configure]> Kemudian atur kapasitas yang hendak digunakan. Jangan terlalu besar, menurut saya 5-10 % dari sisa kapasitas hard disk yang tersisa sudah cukup. klik OK

  3. Matikan / Nonaktifkan fitur-fitur yang jarang dipergunakan.
    Pada windows 7 tersedia banyak sekali fitur-fitur khususnya fitur untuk mempercantik tampilan. Kalau fitur ini diaktifkan maka akan banyak memakan ruang di vga maupun memori. akibatnya kinerja computer juga menjadi lambat.

    • Nonaktifkan Aero themes
      Klik kanan [desktop] > klik [personalize] > pilih [windows 7 basic]. tutup jendela personalize.

    • Non aktifkan Aero Peek.
      Aero peek ini digunakan untuk membuat transparan jendela yang sedang terbuka.
      Untuk menonaktifkan fitur ini dengan cara : Klik kanan pada [taskbar] > klik [properties] > hilangkan tanda centang pada “ use aero Peek to preview desktop

    • Nonaktifkan aero shake.
      Misal ada beberapa jendela yang aktif, Jika salah satu jendela yang aktif di gerak-gerakkan, maka secara otomatis jendela yang lain akan di minimize. Untuk menonaktifkan fitur aero shake ini dilakukan dengan cara :

      • Buka group policy editor dengan cara klik tombol [start] kemudian ketik “gpedit.msc” (tanpa tanda”) kemudian tekan [enter].

      • Setelah muncul halaman local group policy editor, masuk ke [User Configuration] >[administrative template] > [desktop]. Pada jendela sebelah kanan klik ganda “ turn off aero shake windows minimizing mouse gesture” > pilih [enable] dan klik [OK].

    • Nonaktifkan aero snap
      Cara menonaktifkan aero snap adalah :
      • Masuk ke [control panel], Klik [ease of acces] > klik [ease of acces center] > klik[Make the mouse easier to use]

      • Beri centang pada “Prevent windows from being automatically arranged when to the edge of the screen”. Klik OK.

  4. Lakukan defragmentasi hard disk paling tidak satu bulan sekali
    [Start] > [all program] > [Accessories] > [System tools] > [disk defragmenter]. Pilih salah satu drive kemudian klik [defragment].

  5. Matikan aplikasi yang tidak perlu dijalankan pada saat startup.
    [Start] > ketik “msconfig” tekan [enter] > Klik pada tab [startup] > hilangkan centang pada aplikasi yang tidak diperlu dijalankan saat startup. Klik OK.

  6. Nonaktifkan service yang tidak diperlukan
    [Start] > ketik “services” (tanpa tanda “) > tekan [enter]. Klik kanan pada service yang mau dinonaktifkan kemudian klik [properties]. Klik [disable] jika kita ingin service tidak selalu dijalankan pada saat windows dinyalakan, atau klik [stop] untuk mematikannya. Klik [OK].

  7. Tidak usah pasang gadget di desktop.
    Untuk menonaktifkan gadget pada windows 7 dilakukan dengan cara : [Start] > [Control Panel] >[Programs] >[Turn Windows features on or off ]> hilangkan centang pada “Windows gadget platform > Klik [OK].

  8. Menggunakan semua core untuk booting. 
    Komputer dengan prosesor banyak core, sebaiknya menggunakan semua core pada saat windows booting. Untuk mengatur agar semua core dipakai saat windows boot dapat dilakukan dengan cara :
    • Masuk pada system configuration dengan cara klik [start] kemudian mengetik “msconfig”, lalu tekan [enter]

    • Klik tab [boot] > pilih [system operasi windows 7].

    • Klik tombol [advanced options], sehingga muncul kotak dialog boot advance option, beri centang pada [Number of processor] kemudian pilih jumlah processor.

  9. Jika anda pengguna internet, jadikan browser anda dengan sedikit addons. Karena addons yang terpasang juga membutuhkan ruang di memori.
Demikian setelah mengikuti trik ini mudah-mudahan windows 7 anda semakin prima. Pengalaman sahabat dalam hal optimalisasi windows 7 (seven) bisa jadi tambahan trik ini sehingga menjadi lebih sempurna, silahkan tulis di komentar.

Sunday

Cara Memasang Iklan di Blog

cara memasang  iklan diblog

Cara Pasang Iklan Melayang di Blog - Pada postingan kali ini, saya akan memberikan sedikit tutorial tentang Cara Pasang Iklan Melayang di Blog. Posting ini kelanjutan dari Cara Pasang Iklan di Blog, Buat soabat sobat yang ingin memasang Iklan Internet Murah Efektif Berkualitas Indonesia dengan posisi melayang di blog, silahkan saja ikuti langkah langkahnya dibawah ini.

Cara Pasang Iklan Melayang di Blog
Cara Pasang Iklan Melayang di Blog

Tutorial kali ini akan meningkatkan jumlah klik iklan yang di pasang di blog sobat, Tentunya tidak akan membuat pengunjung blog sobat merasa tidak nyaman, karena script dibawah ini sudah di lengkapi dengan tombol close, jadi bila pengunjung ingin menghilangkan iklan tersebut, tinggal klik tombol close saja.

Sebelum sobat memasang iklan melayang di blog, pastikan terlebih dahulu kalau sudah memiliki Script iklan yang akan di pasang dengan posisi melayang di blog, jika sudah punya script iklannya, langsung ke langkah selanjutnya.

1. Langkah awal, login ke account blogger sobat.

2. Pada bagian Dasbor pilih tab Rancangan.

rancangan blogger

3. Tambah Widget atau Add Gadget, kemudian pilih HTML/Javascript

4. Setelah itu, Copy Paste script dibawah ini.
<style type="text/css">
#gb{
position:fixed;
top:10px;
z-index:+1000;
}
* html #gb{position:relative;}

.gbcontent{
float:right;
border:2px solid #A5BD51;
background:#ffffff;
padding:10px;
}
</style>

<script type="text/javascript">
function showHideGB(){
var gb = document.getElementById("gb");
var w = gb.offsetWidth;
gb.opened ? moveGB(0, 30-w) : moveGB(20-w, 0);
gb.opened = !gb.opened;
}
function moveGB(x0, xf){
var gb = document.getElementById("gb");
var dx = Math.abs(x0-xf) > 10 ? 5 : 1;
var dir = xf>x0 ? 1 : -1;
var x = x0 + dx * dir;
gb.style.top = x.toString() + "px";
if(x0!=xf){setTimeout("moveGB("+x+", "+xf+")", 10);}
}
</script>

<div id="gb">

<div class="gbtab" onclick="showHideGB()"> </div>

<div class="gbcontent">

<div style="text-align:right">
<a href="javascript:showHideGB()">
Close Klik 2X
</a>
</div>
<center>

KODE SCRIPT IKLAN SOBAT

<script type="text/javascript">
var gb = document.getElementById("gb");
gb.style.center = (30-gb.offsetWidth).toString() + "px";
</script></center></div></div>

5. Langkah terakhir, tinggal sobat simpan deh.

Untuk huruf yang berwarna merah di atas, silahkan ganti dengan script iklan yang sudah sobat dapatkan pada situs penyedia layanan pemasang iklan. Gimana sobat? sangat mudah bukan Cara Pasang Iklan Melayang di Blog. Semoga tutorial kali ini bermanfaat untuk para Blogger Indonesia.

Friday

Get Data Back


Runtime GetDataBack untuk FATNTFS Portable 4,22 | 4,20 Mb
Data Recovery Software - GetDataBack adalah data yang sangat canggih perangkat lunak pemulihan, yang akan membantu Anda untuk mendapatkan data Anda kembali bila tabel partisi drive Anda, boot record, Master File Table atau root direktori rusak atau hilang, bila virus telah mencapai drive, file yang dihapus, drive diformat atau dipukul oleh kegagalan daya. GetDataBack datang dalam dua rasa, NTFS dan FAT tergantung pada apa yang sistem file yang Anda miliki.


GetDataBack akan memulihkan data Anda jika partisi meja harddisk, boot record, FAT / MFT atau direktori root hilang atau rusak, data hilang akibat serangan virus, drive diformat, fdisk telah dijalankan, gangguan listrik telah menyebabkan sistem crash, file yang hilang akibat kegagalan perangkat lunak, file tidak sengaja dihapus ...


GetDataBack bahkan dapat memulihkan data anda ketika drive tidak lagi diakui oleh Windows. Hal ini juga bisa digunakan bahkan jika semua informasi direktori - tidak hanya direktori root-hilang. GetDataBack bahkan dapat memulihkan data anda ketika drive tidak lagi diakui oleh Windows. Hal ini juga bisa digunakan bahkan jika semua informasi direktori - tidak hanya direktori root-hilang.


Alat ini bekerja pada tingkat partisi dan akan mengembalikan file dan folder persis bagaimana mereka dulu. Ini pulih data dari disket dan ZIP, gambar dan bahkan drive drive remote yang dihubungkan dengan kabel serial atau TCP / IP. Seperti namanya, itu mengembalikan file dari FAT / NTFS disk - file system yang digunakan oleh Windows NT/2000/XP, namun bekerja pada semua sistem Windows. Pastikan Anda tidak pernah menginstal program pada to-be-sembuh drive dan Anda tidak akan pernah kehilangan data penting.


Advanced algoritma akan memastikan bahwa semua direktori dan sub direktori diletakkan bersama-sama karena mereka, dan bahwa nama file yang panjang yang direkonstruksi dengan benar. GetDataBack adalah read-only, artinya program ini tidak akan pernah mencoba untuk menulis ke drive yang akan Anda pulih. Pastikan untuk membaca petunjuk keselamatan ...


Perangkat lunak ini memungkinkan user biasa untuk melakukan pemulihan sendiri data dengan membimbing dia melalui tiga mudah untuk memahami langkah, sehingga memberikan pengguna advance kemungkinan untuk mengganggu pemulihan dan meningkatkan hasil, dengan memeriksa scan log, rincian file sistem, informasi file dan direktori, dengan memilih rentang sektor yang akan dipindai, dengan memilih pencarian yang berlebihan untuk sistem file atau mencari file yang hilang, dengan menelepon Runtime's DiskExplorer.


Recover file melalui jaringan lokal Anda atau melalui kabel serial - Fitur ini memungkinkan Anda untuk menjalankan GetDataBack pada satu komputer ("remote") saat mengakses drive dari komputer lain ("host"). Memulihkan data melalui jaringan berguna, terutama ketika Anda tidak dapat menghapus drive yang ingin Anda pulih dari dan pasang ke komputer lain.


GetDataBack pulih dari:
• Hard drive (IDE, SCSI, SATA)
• USB drive
• Firewire drive
• Partisi
• Dynamic Disk
• Floppy drive
• Drive gambar
• Zip / Jaz drive
• Compact Flash Cards
• Smart Media Card
• Kartu Secure Digital
• USB Flash Drive
• iPod Disk

Software Antivirus Baru Ditemukan Bocah Berusia 13 Tahun Asal Bandung


Software Antivirus Baru Ditemukan Bocah Berusia 13 Tahun Asal Bandung

Posted on 14. Feb, 2011 by Amri in OS, Windows
 Software Antivirus Baru Ditemukan Bocah Berusia 13 Tahun Asal BandungInformasi yang sedikit terlambat atau malah bisa dibilang sudah basi, namun saya yakin masih ada orang yang belum mendapatkan informasi ini.
Software Antivirus Baru Ditemukan Bocah Berusia 13 Tahun Asal Bandung. Bocah penemu Software Antivirus ini Kakak beradik,  Arival usia 13 tahun dan Taufik Aditya Utama berusia 15 tahun asal Bojongsoang Kabupaten Bandung menemukan antivirus yang kemudian diberinama “Artav” (Arival Taufik Anti Virus).
Menurut yang diungkapkan Aivial, Antivirus yang diberi nama Artav ini dibuat karena kebutuhan akan komputer mereka yang sering terkena virus. Sehingga mereka bereksperimen untuk mencoba membuat Antivirus sesuai kebutuhan mereka.
Arival merupakan pelajar kelas 8 SMP Nageri 24 Kota Bandung sedangkan kakaknya merupakan pelajar kelas 1 SMA Negeri 25 Kota Bandung.
AntiVirut Artav sendiri ditemukan oleh kakak beradik itu sekitar April 2010 lalu, dan hingga saat ini sudah banyak digunakan oleh para pengguna komputer. Ia sendiri melakukan sosialisasi pertamanya kepada teman-temannya untuk memprotek program game.
“Awalnya saya jual prorgam Artav ke teman-teman seharga Rp5.000. Mereka senang bisa menangkal virus,” kata Arival.
Ia mengakui, dirinya membuatkan program, sedangkan desainnya dibuatkan oleh kakaknya, Taufik. Penemuan antivirus itu sendiri diakui olehnya bukan kebetulan namun hasil kerja kerasnya selama mengutak atik komputer.
Penemuan hebat pelajar tersebut akhirnya disambut oleh perusahaan operator seluler XL Axiata untuk kemudian memfasilitasi pendaftaran hak paten untuk temuan kedua pelajar jagoan komputer asal Bandung itu.
“Saya akan buatkan antivirus untuk program mobile. Artav ke depan akan dikembangkan untuk layanan berbayar dan bebas (free),” kata Arival yang pengagum pemilik Microsoft, Bill Gates itu.
Ia mengaku senang karua antivirusnya akan difasilitasi untuk mendapat hak paten. Sehingga hal itu memacunya untuk terus mengembangkan antivirus lainnya, termasuk program-program yang bermanfaat lainnya.
Uniknya, kedua bocah jenius itu tidak memiliki latar belakang pengetahuan IT dari keluarganya. Ayahnya merupakan pensiunan karyawan di perusahaan elektronika. Hebatnya lagi kedua kakak beradik itu lebih banyak merampungkan antivirus Artav itu di warung internet atau warnet.
“Saya senang komputer dan internet, sehingga tahu persis terkait virus, Arival juga sama sehingga kami sering kerja sama dan saling melengkapi,” kata Taufik yang pelajar SMA 25 Kota Bandung itu.
Sementara itu Vice President XL Axiata Central Region, Kencono Wibowo menyebutkan, pihaknya memfasilitasi agar antivirus yang ditemukan kedua bocah itu mendapatkan hak paten. “Kami apresiasi terhadap karya mereka, salah satunya memfasilitasi peralatan laptop dan memfasilitasi hak paten bagi penemuan mereka,” kata Kencono Wibowo menambahkan.
Dikutip dari www.republika.co.id

Thursday

Cara Mengembalikan Data yang Hilang

Pernah gak temen2 secara kagak sengaja menghapus file atau folder penting secara permanen (shift+del)???coba bayangin kalau hal itu terjadi???
Tuiiiing…Tuiiiiinggg…pastiny apa lagi kalau itu file skripsweet kita (personal experience)cxixixi…serasa malaikat izrofil akan meniup sangkakala (kiamat red)…
Setelah menjelajahi bit-bit dunia maya yang tanpa batas akhirnya I can solve this problem….caranya bijimana???WinUtilities Undelete….yups ni jawabannya


WinUtilities Undelete adalah tool recovery data yang dapat membantu kita mencari data yang terhapus secara permanen (shift+del) dan mengembalikannya ke tempat yang kita inginkan. Tool ini bisa juga untuk mengembalikan data dari storage eksternal (flashdisk) atau kartu memori kamera digital yang terformat.
Bijimana cara menggunakannya????



Cara menggunakan ini tool cukup mudah (user friendly dah). Setelah instalasi, buka aplikasinya dan klik drive dimana kita akan mencari file yang hilang di sisi sebelah kiri. Setelah tool tersebut melakukan scanning akan muncul semua file yang ada di drive tersebut beserta file-file yang sudah kita delete secara permanen. So..tinggal anda pilih file mana yang akan anda kembalikan dengan cara klik kanan file tersebut dan klik undelete.

Tuesday

Cara Membuat Antivirus Sendiri

 Cara Membuat Antivirus Sendiri
ikuti ia    Langkahnya.....

1. Buatlah 1 buah Form baru. dan berinama frmMain
lalu masukan Komponen :

- Frame (ganti namenya menjadi frScan dan ganti captionnya menjadi Scan area)
- Frame (ganti namenya menjadi frResult dan ganti captionnya menjadi Result area)
- UniList (ganti namenya menjadi lstScan)
- UniList (ganti namenya menjadi lstResult)
- UniLabel (ganti namenya menjadi lblFile dan ganti captionnya menjadi [READY] )
- UniDialog ( gak usah di apa apain cuman masukin saja ke FORM)
- Command Button ( ganti namenya menjadi cmdRemove dan ganti captionnya menjadi Remove )
- Command Button (ganti namenya menjadi cmdAdd dan ganti captionnya menjadi Add )
- Command Button (ganti namenya menjadi Command1 dan ganti captionnya menjadi Star Scan )
- Command Button (ganti namenya menjadi Command2 dan ganti captionnya menjadi Options )
- Command Button (ganti namenya menjadi Command3 dan ganti captionnya menjadi List Virus )
- Command Button (ganti namenya menjadi Command4 dan ganti captionnya menjadi About )
- Command Button (ganti namenya menjadi Command5 dan ganti captionnya menjadi Quit )

Lalu masukan Coding Ini di Form nya .
Private Sub Command3_Click()
MsgBox "[Daftar Virus]" & Chr(13) & "1. Virus1" & Chr(13) & "2. Virus2" & Chr(13) & "3. Virus3", vbOKOnly, "Daftar Virus"
End Sub

Private Sub Command4_Click()
frmAbout.Show
End Sub

Private Sub Form_Load()
lstResult.AddItem "Welcome to WMR Anti Vir !"
lstResult.AddItem "Copyright © 2009 - 2010, AndaSoft"

lstScan.AddItem Environ$("windir") & "\*.*"
BERHENTI = True ' Set nilai Berhenti True
BacaDatabase App.path & "\database.db"
End Sub

Private Sub cmdAdd_Click()
UniDialog1.FolderMessage = "Select a path : "
UniDialog1.ShowFolder
End Sub

Private Sub cmdRemove_Click()
On Error Resume Next

Static count As Integer
For count = 1 To lstScan.ListCount
    If lstScan.Selected(count - 1) = True Then lstScan.RemoveItem (count - 1)
Next
End Sub

Private Sub Command1_Click()
Static count As Byte
If lstScan.ListCount = 0 Then Exit Sub
If Command1.Caption = "Start &scan" Then
    BERHENTI = False
    PosisiScan (True)
    Command1.Caption = "Abort &scan"
    lstResult.Clear
    For count = 0 To lstScan.ListCount - 1
        If BERHENTI = True Then Exit For
        lstResult.AddItem "[Scanning File ...]"
        lstResult.AddItem " "
        lstResult.AddItem " "
        ScanFolder RemoveFromRight(lstScan.List(count), 4), lblFile, lstResult
    Next
    Command1.Caption = "Start &scan"
    PosisiScan (False)
    BERHENTI = True
    MsgBox "Scan is finished !", vbInformation, "MY Antivirus"
Else
    BERHENTI = True
    Command1.Caption = "Start &scan"
    PosisiScan (False)
End If

End Sub

Private Sub Command2_Click()
frmOption.Show 1, Me
End Sub

Private Sub Command5_Click()
Unload Me
End
End Sub

Private Sub Form_Resize()
On Error Resume Next
Me.Height = 9615
Me.Width = 10320
End Sub

Private Sub Form_Unload(Cancel As Integer)
If BERHENTI = False Then Cancel = 1
End Sub

Private Sub Image1_Click()
frmGenerator.Show
End Sub

Private Sub lstScan_Click(Button As UniListMouseButton)

End Sub

Private Sub UniDialog1_FolderSelect(ByVal path As String)
If path <> "" Then
    lstScan.AddItem path & "\*.*"
End If
End Sub

Private Function AddSlash(sPath As String) As String
If Right(sPath, 1) = "\" Then
    AddSlash = sPath
Else
    AddSlash = sPath & "\"
End If
End Function

Private Sub PosisiScan(TF As Boolean)
If TF = True Then
    Command2.Enabled = False
    Command3.Enabled = False
    Command4.Enabled = False
    Command5.Enabled = False
    frScan.Enabled = False
    frResult.Enabled = False
Else
    Command2.Enabled = True
    Command3.Enabled = True
    Command4.Enabled = True
    Command5.Enabled = True
    frScan.Enabled = True
    frResult.Enabled = True
End If

End Sub

Private Function RemoveFromRight(sTemp As String, iRight As Integer) As String
    RemoveFromRight = Left(sTemp, Len(sTemp) - iRight)
End Function


2. tambahkan 1 Form lagy. dan berinama frmOption
lalu masukan Commponen :

- CheckBox ( ganti name nya menjadi ck1 dan captionnya menjadi Enable filter file size (by pass file up to 4 MB) )
- CheckBox ( ganti name nya menjadi ck2 dan captionnya menjadi Enable clean virus found (deleted virus after found) )
- CheckBox ( ganti name nya menjadi ck3 dan captionnya menjadi Enable normalize attribute (normalize attribute every file found) )
- Command Button ( ganti name nya menjadi cmdCancle dan captionnya menjadi Cancel
- Command Button ( ganti name nya menjadi cmdOk dan captionnya menjadi OK )

dan masukan coding di frmOption seperti ini :
 
 Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, _
ByVal wParam As Long, lParam As Any) As Long
Private Declare Sub ReleaseCapture Lib "user32" ()

Private Const WM_NCLBUTTONDOWN = &HA1
Private Const HTCAPTION = 2


Private Sub cmdCancel_Click()
ck1.value = 0
ck2.value = 0
ck3.value = 0

Me.Hide
End Sub

Private Sub cmdOK_Click()
Me.Hide
End Sub

Private Sub Image1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim lngReturnValue As Long
If Button = 1 Then
    Call ReleaseCapture
    lngReturnValue = SendMessage(Me.hWnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&)
End If
End Sub


Bagian Form sudah selesai Tinggal sekarang bagian module..

Tambahkan 5 buah Module.
-Modul1 ganti namanya menjadi ModDb
dan masukan Codding sperty ini
Public sMD5() As String
Public sNamaVirus() As String
Public JumlahVirus As Integer

Public Function BacaDatabase(sPath As String)
Static sTemp As String
Static sTmp() As String
Static sTmp2() As String
Static pisah As String
Static iCount As Integer
Static iTemp As Integer


pisah = Chr(13)
sTemp = ReadAnsiFile(sPath) ' boleh diganti fungsi ReadUnicodeFile
sTmp() = Split(sTemp, pisah)

iTemp = UBound(sTmp()) - 1 ' untuk jumlah virus

ReDim sMD5(iTemp) As String
ReDim sNamaVirus(iTemp) As String

For iCount = 1 To iTemp
    sTmp2() = Split(sTmp(iCount), ":")
    sMD5(iCount) = Mid(sTmp2(0), 2)
    sNamaVirus(iCount) = sTmp2(1)
Next
JumlahVirus = iTemp
End Function


Public Function isFileVirus(sPath As String, lstVirus As UniList) As Boolean
Static iCount As Integer
Static MD5file As String

MD5file = GET_MD5(sPath)

For iCount = 1 To JumlahVirus
    If sMD5(iCount) = MD5file Then ' jika virus didapet
        lstVirus.AddItem "Virus Found ! [" & sNamaVirus(iCount) & "] - " & sPath
        isFileVirus = True
        Exit Function
    End If
Next
isFileVirus = False
End Function

-Module2 ganti namanya menjadi ModFile
masukan codding seperty ini
Private Declare Function DeleteFile Lib "kernel32" Alias "DeleteFileW" (ByVal lpFileName As Long) As Long
Private Declare Function SetFileAttributes Lib "kernel32" Alias "SetFileAttributesW" (ByVal lpFileName As Long, ByVal dwFileAttributes As Long) As Long
Private Declare Function GetFileAttributes Lib "kernel32" Alias "GetFileAttributesW" (ByVal lpFileName As Long) As Long

Dim RDF As New clsFile

Public Function ReadUnicodeFile(sFilePath As String, Msg As Boolean, nStart As Long, nLenght As Long) As String
On Error Resume Next
Dim zFileName  As String
Dim hFile      As Long 'nomor file handle, valid jika > 0;
Dim nFileLen    As Long
Dim nOperation  As Long
    'coba baca file yang namanya mengandung unsur unicode:
    zFileName = sFilePath
    'gunakan akses "read_write_existing" untuk menguji apakah file benar-benar ada:
    hFile = RDF.VbOpenFile(zFileName, FOR_BINARY_ACCESS_READ_WRITE_EXISTING, LOCK_NONE)
    'selanjutnya:
    If hFile > 0 Then 'jika berhasil membuka file hFile/Handel file > 0;
        'cari tahu ukuran filenya:
        nFileLen = RDF.VbFileLen(hFile)
       
        Dim bufData()  As Byte
            nOperation = RDF.VbReadFileB(hFile, nStart, nLenght, bufData)
            ReadUnicodeFile = StrConv(bufData, vbUnicode)
            RDF.VbCloseFile hFile 'harus tutup handle ke file setelah mengaksesnya !!!
    Else 'jika gagal membuka file;
            If Msg = True Then MsgBox "#gagal membuka file ! :("
            GoTo TERAKHIR
    End If
Exit Function

TERAKHIR:
End Function

Public Function ReadAnsiFile(sFile As String) As String
Dim sTemp As String
Open sFile For Binary As #1
    sTemp = Space(LOF(1))
    Get #1, , sTemp
Close #1
ReadAnsiFile = sTemp
End Function

Public Function NormalizeAttribute(sPath As String)
On Error Resume Next
If GetFileAttributes(StrPtr(sPath)) = 4 Then ' system
  SetFileAttributes StrPtr(sPath), 0
ElseIf GetFileAttributes(StrPtr(sPath)) = 6 Then ' hidden + system
  SetFileAttributes StrPtr(sPath), 0
ElseIf GetFileAttributes(StrPtr(sPath)) = 2 Then '
  SetFileAttributes sPath, 0
ElseIf GetFileAttributes(StrPtr(sPath)) = 38 Then '
  SetFileAttributes StrPtr(sPath), 0
ElseIf GetFileAttributes(StrPtr(sPath)) = 39 Then '
  SetFileAttributes StrPtr(sPath), 0
End If
End Function

Public Function HapusFile(sPath As String)
On Error Resume Next

SetFileAttributes StrPtr(sPath), 0
DeleteFile StrPtr(sPath)

End Function

Public Function isProperFile(sPath As String, limitSizeMB As Integer, sExt As String) As Boolean
On Error Resume Next
If (limitSizeMB * 1024 * 1024) > FileLen(sPath) Then
    If InStr(1, UCase(sExt), UCase(Right(sPath, 3))) > 0 Then
        isProperFile = True
    Else
        isProperFile = False
    End If
Else
    isProperFile = False
End If
End Function



-module3 ganti namanya menjadi ModMD5
masukan codding seperti ini :
 
' Mendapatkan MD5 (message digest 5) dengan mengambil 2000 kar dari kiri data file yang dibaca
' Anda bisa modifikasi sendiri data dari sebuah file yang ingin dijadikan ceksum MD5
' pada kasus ni saya mengambil 2000 kar sebelah kiri seluruh bagian data dari isi file
' atau jika file kurang dari 2000 byte maka data file diambil semuanya

Public Function GET_MD5(FileName As String) As String
On Error GoTo Salah
   
    Dim MD5 As New clsMD5
    Dim Buff As String
   
    Buff = ReadUnicodeFile(FileName, False, 1, 2000) ' --> baca file 2000 dari kiri aj
   
    Buff = Left(Buff, 2000) ' 2000 menandakan banyaknya kar yang diambil dari kiri
   
    MD5.MD5Init
    MD5.DigestStrToHexStr Buff
    GET_MD5 = MD5.GetValues
    Set MD5 = Nothing
    Exit Function
Salah:
End Function

[/Spoiler]

-Module4 ganti namanya menjadi ModSearch
masukan codding seperti ini :

[Spoiler]
Dim FSO As Object
Public BERHENTI As Boolean

Private Function GET_Folder(Folder As String, lbFile As UniLabel, lstInfo As UniList) As String
On Error Resume Next
Dim sFolder As Object

For Each sFolder In FSO.getFolder(Folder).subFolders
    GET_Folder (sFolder.path), lbFile, lstInfo
    If BERHENTI = True Then Exit Function
    GetFile sFolder.path, lbFile, lstInfo
Next
End Function

Private Function GetFile(path As String, lbFile As UniLabel, lstInfo As UniList)
Dim sFile As Object
For Each sFile In FSO.getFolder(path).Files
    DoEvents
    If BERHENTI = True Then Exit Function
    lbFile.Caption = sFile
    If frmOption.ck1.value = 1 Then
        If isProperFile(CStr(sFile), 3, "EXE DLL VBS VMX DB COM SCR BAT") = True Then
            If isFileVirus(CStr(sFile), lstInfo) = True Then
                If frmOption.ck2.value = 1 Then HapusFile CStr(sFile)
            End If
            If frmOption.ck3.value = 1 Then NormalizeAttribute CStr(sFile)
        End If
    Else
        If isFileVirus(CStr(sFile), lstInfo) = True Then
            If frmOption.ck2.value = 1 Then HapusFile CStr(sFile)
        End If
        If frmOption.ck3.value = 1 Then NormalizeAttribute CStr(sFile)
    End If
Next
End Function

Public Function ScanFolder(Folder As String, lbFile As UniLabel, lstInfo As UniList)
Dim sFile As Object
Set FSO = CreateObject("Scripting.FileSystemObject")
For Each sFile In FSO.getFolder(Folder).Files
    DoEvents
    lbFile.Caption = sFile
    If frmOption.ck1.value = 1 Then
        If isProperFile(CStr(sFile), 3, "EXE DLL VBS VMX DB COM SCR BAT") = True Then
            If isFileVirus(CStr(sFile), lstInfo) = True Then
                If frmOption.ck2.value = 1 Then HapusFile CStr(sFile)
            End If
            If frmOption.ck3.value = 1 Then NormalizeAttribute CStr(sFile)
        End If
    Else
        If isFileVirus(CStr(sFile), lstInfo) = True Then
            If frmOption.ck2.value = 1 Then HapusFile CStr(sFile)
        End If
        If frmOption.ck3.value = 1 Then NormalizeAttribute CStr(sFile)
    End If
Next
GET_Folder Folder, lbFile, lstInfo ' Lanjut ke file - file adalam sub folder
End Function


-Module5 ganti namanya menjadi ModUniList
masukan codding ini :
Option Explicit

Private Type GUID
    Data1 As Long
    Data2 As Integer
    Data3 As Integer
    Data4(0 To 7) As Byte
End Type

Public Type UniList_IPAOHook
    lpVTable As Long
    IPAOReal As IOleInPlaceActiveObject
    Ctl As UniList
    ThisPointer As Long
End Type

Private Const S_FALSE As Long = 1
Private Const S_OK As Long = 0

Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
Private Declare Function IsEqualGUID Lib "ole32" (iid1 As GUID, iid2 As GUID) As Long

Private IID_IOleInPlaceActiveObject As GUID
Private m_IPAOVTable(9) As Long

Private Function AddOf(ByVal AddressOfProcedure As Long) As Long
    AddOf = AddressOfProcedure
End Function

Private Function IPAO_AddRef(This As UniList_IPAOHook) As Long
    IPAO_AddRef = This.IPAOReal.AddRef
End Function

Private Function IPAO_ContextSensitiveHelp(This As UniList_IPAOHook, ByVal fEnterMode As Long) As Long
    IPAO_ContextSensitiveHelp = This.IPAOReal.ContextSensitiveHelp(fEnterMode)
End Function

Private Function IPAO_EnableModeless(This As UniList_IPAOHook, ByVal fEnable As Long) As Long
    IPAO_EnableModeless = This.IPAOReal.EnableModeless(fEnable)
End Function

Private Function IPAO_GetWindow(This As UniList_IPAOHook, phwnd As Long) As Long
    IPAO_GetWindow = This.IPAOReal.GetWindow(phwnd)
End Function

Private Function IPAO_OnDocWindowActivate(This As UniList_IPAOHook, ByVal fActivate As Long) As Long
    IPAO_OnDocWindowActivate = This.IPAOReal.OnDocWindowActivate(fActivate)
End Function

Private Function IPAO_OnFrameWindowActivate(This As UniList_IPAOHook, ByVal fActivate As Long) As Long
    IPAO_OnFrameWindowActivate = This.IPAOReal.OnFrameWindowActivate(fActivate)
End Function

Private Function IPAO_QueryInterface(This As UniList_IPAOHook, riid As GUID, pvObj As Long) As Long
    If IsEqualGUID(riid, IID_IOleInPlaceActiveObject) Then
        pvObj = This.ThisPointer
        IPAO_AddRef This
        IPAO_QueryInterface = 0
    Else
        IPAO_QueryInterface = This.IPAOReal.QueryInterface(ByVal VarPtr(riid), pvObj)
    End If
End Function

Private Function IPAO_Release(This As UniList_IPAOHook) As Long
    IPAO_Release = This.IPAOReal.Release
End Function

Private Function IPAO_ResizeBorder(This As UniList_IPAOHook, prcBorder As RECT, ByVal puiWindow As IOleInPlaceUIWindow, ByVal fFrameWindow As Long) As Long
    IPAO_ResizeBorder = This.IPAOReal.ResizeBorder(VarPtr(prcBorder), puiWindow, fFrameWindow)
End Function

Private Function IPAO_TranslateAccelerator(This As UniList_IPAOHook, lpMsg As Msg) As Long
    Dim CtlText As UniList
    If TypeOf This.Ctl Is UniList Then
        Set CtlText = This.Ctl
        If CtlText.TranslateAccel(lpMsg) Then IPAO_TranslateAccelerator = S_OK: Exit Function
    End If
    IPAO_TranslateAccelerator = This.IPAOReal.TranslateAccelerator(ByVal VarPtr(lpMsg))
End Function

Public Sub UniList_Init(UniList_IPAOHook As UniList_IPAOHook, Ctl As UniList)
    Dim IPAO As IOleInPlaceActiveObject
    If m_IPAOVTable(0) = 0 Then
        m_IPAOVTable(0) = AddOf(AddressOf IPAO_QueryInterface)
        m_IPAOVTable(1) = AddOf(AddressOf IPAO_AddRef)
        m_IPAOVTable(2) = AddOf(AddressOf IPAO_Release)
        m_IPAOVTable(3) = AddOf(AddressOf IPAO_GetWindow)
        m_IPAOVTable(4) = AddOf(AddressOf IPAO_ContextSensitiveHelp)
        m_IPAOVTable(5) = AddOf(AddressOf IPAO_TranslateAccelerator)
        m_IPAOVTable(6) = AddOf(AddressOf IPAO_OnFrameWindowActivate)
        m_IPAOVTable(7) = AddOf(AddressOf IPAO_OnDocWindowActivate)
        m_IPAOVTable(8) = AddOf(AddressOf IPAO_ResizeBorder)
        m_IPAOVTable(9) = AddOf(AddressOf IPAO_EnableModeless)
        With IID_IOleInPlaceActiveObject
          .Data1 = &H117&
          .Data4(0) = &HC0
          .Data4(7) = &H46
        End With
    End If
    With UniList_IPAOHook
        Set IPAO = Ctl
        CopyMemory .IPAOReal, IPAO, 4
        CopyMemory .Ctl, Ctl, 4
        .lpVTable = VarPtr(m_IPAOVTable(0))
        .ThisPointer = VarPtr(UniList_IPAOHook)
    End With
End Sub
Public Sub UniList_Terminate(UniList_IPAOHook As UniList_IPAOHook)
    With UniList_IPAOHook
        CopyMemory .IPAOReal, 0&, 4
        CopyMemory .Ctl, 0&, 4
    End With
End Sub
 

Module udah selesai ..
sekarang bagian 'Class Module'

Masukan 2 buat Class Module.
-Class1 ganti namanya menjadi clsFile
dan masukan Codding ini :
 
Option Explicit

Private Const MAX_PATH      As Long = 260              '00-FF
Private Const MAX_BUFFER    As Long = (MAX_PATH * 2)    '00 00 - FF FF

Private Const SYNCHRONIZE = &H100000    'penting! sinkronisasi data dan akses dengan proses lain.
Private Const READ_CONTROL = &H20000    'penting! ijin untuk mengoperasikan file.
Private Const FILE_READ_DATA = (&H1)    'penting! operasi: membaca file.
Private Const FILE_WRITE_DATA = (&H2)  'penting! operasi: menulis file.

Private Const FILE_SHARE_READ = &H1    'dapat diakses baca oleh proses lain.
Private Const FILE_SHARE_WRITE = &H2    'dapat diakses tulis oleh proses lain.
Private Const FILE_SHARE_DELETE = &H4  'dapat diakses hapus oleh proses lain.

Private Const FILE_ATTRIBUTE_NORMAL = &H80 'untuk file standar.

'operasi alternatif untuk file yang akan dibuat ataupun dibuka:
Private Const FILE_DISPOSE_CREATE_NEW = 1          'hanya akan membuat file baru. bila file sudah ada sebelumnya, fungsi gagal.
Private Const FILE_DISPOSE_CREATE_ALWAYS = 2        'hapus file yang lama (bila ada), dan akan membuat file yang baru.
Private Const FILE_DISPOSE_OPEN_EXISTING = 3        'hanya akan membuka file yang sudah ada, bila file tidak ada, fungsi gagal.
Private Const FILE_DISPOSE_OPEN_ALWAYS = 4          'membuka file yang ada (bila ada), dan akan membuat file yang baru bila file belum ada.
Private Const FILE_DISPOSE_TRUNCATE_EXISTING = 5    'membuka file yang sudah ada, dan menghapus semua isinya terlebih dahulu. fungsi gagal bila file tidak ada.

'membuka file:
Private Declare Function CreateFileW Lib "kernel32" (ByVal lpFileName As Long, 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
Private Declare Function CreateFileA Lib "kernel32" (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

'mencari ukuran file:
Private Declare Function GetFileSize Lib "kernel32" (ByVal hFile As Long, lpFileSizeHigh As Long) As Long

'menggeser posisi pointer ke file:
Private Declare Function SetFilePointer Lib "kernel32" (ByVal hFile As Long, ByVal lDistanceToMove As Long, lpDistanceToMoveHigh As Long, ByVal dwMoveMethod As Long) As Long

'operasi dasar untuk file yang telah dibuka:
Private Declare Function ReadFile Lib "kernel32" (ByVal hFile As Long, lpBuffer As Any, ByVal nNumberOfBytesToRead As Long, lpNumberOfBytesRead As Long, lpOverlapped As Any) As Long
Private Declare Function WriteFile Lib "kernel32" (ByVal hFile As Long, lpBuffer As Any, ByVal nNumberOfBytesToWrite As Long, lpNumberOfBytesWritten As Long, lpOverlapped As Any) As Long

'menutup file yang telah dibuka:
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long

'\\Ingat!:
Public Enum CREATE_ACCESS_OPTIONS
    FOR_BINARY_ACCESS_READ = 1                  'hanya membaca isi dari file, tanpa memodifikasi isi file. bila file tidak ada, fungsi gagal.
    FOR_BINARY_ACCESS_WRITE = 2                'hanya menulis isi ke file, bila file belum ada, akan dibuatkan file baru.
    FOR_BINARY_ACCESS_READ_WRITE = 3            'untuk membaca dan menulis file, bila file belum ada, akan dibuatkan file baru.
    FOR_BINARY_ACCESS_READ_WRITE_EXISTING = 4  'untuk membaca dan menulis file, bila file belum ada, fungsi akan gagal. lebih aman.
End Enum

'\\Ingat!:
Public Enum SHARE_ACCESS_OPTIONS
    LOCK_READ_WRITE = 1 'hanya "sharing delete access", untuk proses yang lain.
    LOCK_READ = 2      'hanya "sharing write + delete access", untuk proses yang lain.
    LOCK_WRITE = 3      'hanya "sharing read + delete access", untuk proses yang lain.
    LOCK_NONE = 4      '"sharing" semuanya, tanpa terkecuali.
End Enum

Public Function VbOpenFile(ByVal szFileName As String, ByVal opCreateOption As CREATE_ACCESS_OPTIONS, ByVal opShareAccess As SHARE_ACCESS_OPTIONS) As Long
On Error Resume Next 'memberi nomor handle ke file bila berhasil, 0 jika gagal.
Dim KeResult        As Long 'result dari kernel32.
Dim KeCreateAccess  As Long
Dim KeCreateOption  As Long
Dim KeShareAccess  As Long
   
    Select Case opCreateOption
        Case FOR_BINARY_ACCESS_READ                '1
            KeCreateAccess = SYNCHRONIZE Or READ_CONTROL Or FILE_READ_DATA
            KeCreateOption = FILE_DISPOSE_OPEN_EXISTING
        Case FOR_BINARY_ACCESS_WRITE                '2
            KeCreateAccess = SYNCHRONIZE Or READ_CONTROL Or FILE_WRITE_DATA
            KeCreateOption = FILE_DISPOSE_OPEN_ALWAYS
        Case FOR_BINARY_ACCESS_READ_WRITE          '3
            KeCreateAccess = SYNCHRONIZE Or READ_CONTROL Or FILE_READ_DATA Or FILE_WRITE_DATA
            KeCreateOption = FILE_DISPOSE_OPEN_ALWAYS
        Case FOR_BINARY_ACCESS_READ_WRITE_EXISTING  '4
            KeCreateAccess = SYNCHRONIZE Or READ_CONTROL Or FILE_READ_DATA Or FILE_WRITE_DATA
            KeCreateOption = FILE_DISPOSE_OPEN_EXISTING
    End Select
   
    Select Case opShareAccess
        Case LOCK_READ_WRITE    '1
            KeShareAccess = FILE_SHARE_DELETE
        Case LOCK_READ          '2
            KeShareAccess = FILE_SHARE_WRITE Or FILE_SHARE_DELETE
        Case LOCK_WRITE        '3
            KeShareAccess = FILE_SHARE_READ Or FILE_SHARE_DELETE
        Case LOCK_NONE          '4
            KeShareAccess = FILE_SHARE_READ Or FILE_SHARE_WRITE Or FILE_SHARE_DELETE
    End Select
   
    'pakai cara utama (unicode):
    KeResult = CreateFileW(StrPtr(szFileName), KeCreateAccess, KeShareAccess, ByVal 0, KeCreateOption, FILE_ATTRIBUTE_NORMAL, 0)
    If KeResult > 0 Then        'sukses pakai cara unicode.
        VbOpenFile = KeResult 'masukkan ke fungsi (return): nomor handle menuju ke file.
        GoTo TERAKHIR
    End If
   
    'pakai cara cadangan (ansi):
    KeResult = 0                'reset, sekarang coba pakai ansi:
    KeResult = CreateFileA(szFileName, KeCreateAccess, KeShareAccess, ByVal 0, KeCreateOption, FILE_ATTRIBUTE_NORMAL, 0)
    If KeResult > 0 Then        'sukses pakai cara ansi.
        VbOpenFile = KeResult  'masukkan ke fungsi (return): nomor handle menuju ke file.
        GoTo TERAKHIR
    End If
   
    VbOpenFile = 0            'gagal membuka file :(
   
TERAKHIR:
    If Err.Number > 0 Then
        Err.Clear
    End If
End Function

Public Function VbFileLen(ByVal nFileHandle As Long) As Long
On Error Resume Next 'memberi nilai angka sebesar ukuran file dalam bytes.
    VbFileLen = GetFileSize(nFileHandle, 0)
TERAKHIR:
    If Err.Number > 0 Then
        Err.Clear
    End If
End Function

Public Function VbCloseFile(ByVal nFileHandle As Long) As Long
On Error Resume Next 'memberi nilai 1 jika berhasil, 0 jika gagal.
    VbCloseFile = CloseHandle(nFileHandle)
TERAKHIR:
    If Err.Number > 0 Then
        Err.Clear
    End If
End Function

Public Function VbReadFileB(ByVal nFileHandle As Long, ByVal nStartPos As Long, ByVal nReadLength As Long, ByRef OutFileData() As Byte) As Long
On Error Resume Next 'memberi isi ukuran file (buffer) dalam bytes sebagai pengembalian (return) + isi buffer.

Erase OutFileData                  'reset memori data.

'lanjut yang baru:
Dim nTrueLen        As Long
    nTrueLen = GetFileSize(nFileHandle, 0) 'cari ukuran filenya.
Dim nRequestStart  As Long
Dim nRequestLen    As Long
Dim nApproxLen      As Long
Dim KeResult        As Long

    'optimisasi opsional, dapat diganti sesuai keinginan:
    If nTrueLen <= -1 Then
        VbReadFileB = -1 'error: file tidak ada.
        GoTo TERAKHIR
    ElseIf nTrueLen = 0 Then
        VbReadFileB = -2 'error: file isi kosong.
        GoTo TERAKHIR
    End If
    If nStartPos > nTrueLen Then
        VbReadFileB = -3 'error: start melebihi akhir.
        GoTo TERAKHIR
    End If
    If nStartPos <= 0 Then
        VbReadFileB = -4 'error: start pointer tidak sesuai.
        GoTo TERAKHIR
    End If
    If nReadLength <= 0 Then
        VbReadFileB = -5 'error: panjang yang diminta tidak sesuai.
        GoTo TERAKHIR
    End If
    If nReadLength > nTrueLen Then
        VbReadFileB = -6 'error: panjang yang diminta melebihi akhir.
        GoTo TERAKHIR
    End If
   
    nRequestStart = nStartPos 'start pointer ke data (base 1).
    nRequestLen = nReadLength 'panjang data.
   
    ReDim OutFileData(nRequestLen - 1) As Byte 'persiapkan buffer data (base 0).
   
    SetFilePointer nFileHandle, (nRequestStart - 1), 0, 0 'set start pointer ke handle (base 0).
    KeResult = ReadFile(nFileHandle, OutFileData(0), nRequestLen, nApproxLen, ByVal 0)
   
    If nApproxLen <> nRequestLen Then 'test ukuran buffer dengan isi datanya.
        ReDim Preserve OutFileData(nApproxLen - 1) As Byte 'sesuaikan lagi ukuran buffer (base 0).
    End If
   
    VbReadFileB = nApproxLen  '<-- beritahu jumlah bytes yang berhasil dibaca.
     
TERAKHIR:
    If Err.Number > 0 Then
        Err.Clear
    End If
End Function

Private Sub Class_Initialize()
On Error Resume Next
    DoEvents
TERAKHIR:
    If Err.Number > 0 Then
        Err.Clear
    End If
End Sub

Private Sub Class_Terminate()
On Error Resume Next
    DoEvents
TERAKHIR:
    If Err.Number > 0 Then
        Err.Clear
    End If
End Sub
 

-class2 ganti namanya menjadi clsMD5
masukan coding ini :
 
Option Explicit

Private Const OFFSET_4 = 4294967296#
Private Const MAXINT_4 = 2147483647
Private State(4) As Long
Private ByteCounter As Long
Private ByteBuffer(63) As Byte
Private Const S11 = 7
Private Const S12 = 12
Private Const S13 = 17
Private Const S14 = 22
Private Const S21 = 5
Private Const S22 = 9
Private Const S23 = 14
Private Const S24 = 20
Private Const S31 = 4
Private Const S32 = 11
Private Const S33 = 16
Private Const S34 = 23
Private Const S41 = 6
Private Const S42 = 10
Private Const S43 = 15
Private Const S44 = 21
Property Get RegisterA() As String
    RegisterA = State(1)
End Property
Property Get RegisterB() As String
    RegisterB = State(2)
End Property

Property Get RegisterC() As String
    RegisterC = State(3)
End Property

Property Get RegisterD() As String
    RegisterD = State(4)
End Property
Public Function DigestStrToHexStr(SourceString As String) As String
    MD5Init
    MD5Update Len(SourceString), StringToArray(SourceString)
    MD5Final
    DigestStrToHexStr = GetValues
End Function
Public Function DigestFileToHexStr(inFIle As String) As String
On Error GoTo errorhandler
GoSub begin

errorhandler:
    DigestFileToHexStr = ""
    Exit Function
   
begin:
    Dim FileO As Integer
    FileO = FreeFile
    Call FileLen(inFIle)
    Open inFIle For Binary Access Read As #FileO
    MD5Init
    Do While Not EOF(FileO)
        Get #FileO, , ByteBuffer
        If Loc(FileO) < LOF(FileO) Then
            ByteCounter = ByteCounter + 64
            MD5Transform ByteBuffer
        End If
    Loop
    ByteCounter = ByteCounter + (LOF(FileO) Mod 64)
    Close #FileO
    MD5Final
    DigestFileToHexStr = GetValues
End Function
Private Function StringToArray(InString As String) As Byte()
    Dim i As Integer, bytBuffer() As Byte
    ReDim bytBuffer(Len(InString))
    For i = 0 To Len(InString) - 1
        bytBuffer(i) = Asc(Mid$(InString, i + 1, 1))
    Next i
    StringToArray = bytBuffer
End Function
Public Function GetValues() As String
    GetValues = LongToString(State(1)) & LongToString(State(2)) & LongToString(State(3)) & LongToString(State(4))
End Function
Private Function LongToString(Num As Long) As String
        Dim A As Byte, B As Byte, c As Byte, d As Byte
        A = Num And &HFF&
        If A < 16 Then LongToString = "0" & Hex(A) Else LongToString = Hex(A)
        B = (Num And &HFF00&) \ 256
        If B < 16 Then LongToString = LongToString & "0" & Hex(B) Else LongToString = LongToString & Hex(B)
        c = (Num And &HFF0000) \ 65536
        If c < 16 Then LongToString = LongToString & "0" & Hex(c) Else LongToString = LongToString & Hex(c)
        If Num < 0 Then d = ((Num And &H7F000000) \ 16777216) Or &H80& Else d = (Num And &HFF000000) \ 16777216
        If d < 16 Then LongToString = LongToString & "0" & Hex(d) Else LongToString = LongToString & Hex(d)
End Function

Public Sub MD5Init()
    ByteCounter = 0
    State(1) = UnsignedToLong(1732584193#)
    State(2) = UnsignedToLong(4023233417#)
    State(3) = UnsignedToLong(2562383102#)
    State(4) = UnsignedToLong(271733878#)
End Sub

Public Sub MD5Final()
    Dim dblBits As Double, padding(72) As Byte, lngBytesBuffered As Long
    padding(0) = &H80
    dblBits = ByteCounter * 8
    lngBytesBuffered = ByteCounter Mod 64
    If lngBytesBuffered <= 56 Then MD5Update 56 - lngBytesBuffered, padding Else MD5Update 120 - ByteCounter, padding
    padding(0) = UnsignedToLong(dblBits) And &HFF&
    padding(1) = UnsignedToLong(dblBits) \ 256 And &HFF&
    padding(2) = UnsignedToLong(dblBits) \ 65536 And &HFF&
    padding(3) = UnsignedToLong(dblBits) \ 16777216 And &HFF&
    padding(4) = 0
    padding(5) = 0
    padding(6) = 0
    padding(7) = 0
    MD5Update 8, padding
End Sub
Public Sub MD5Update(InputLen As Long, InputBuffer() As Byte)
    Dim II As Integer, i As Integer, J As Integer, K As Integer, lngBufferedBytes As Long, lngBufferRemaining As Long, lngRem As Long

    lngBufferedBytes = ByteCounter Mod 64
    lngBufferRemaining = 64 - lngBufferedBytes
    ByteCounter = ByteCounter + InputLen

    If InputLen >= lngBufferRemaining Then
        For II = 0 To lngBufferRemaining - 1
            ByteBuffer(lngBufferedBytes + II) = InputBuffer(II)
        Next II
        MD5Transform ByteBuffer
        lngRem = (InputLen) Mod 64
        For i = lngBufferRemaining To InputLen - II - lngRem Step 64
            For J = 0 To 63
                ByteBuffer(J) = InputBuffer(i + J)
            Next J
            MD5Transform ByteBuffer
        Next i
        lngBufferedBytes = 0
    Else
      i = 0
    End If
    For K = 0 To InputLen - i - 1
        ByteBuffer(lngBufferedBytes + K) = InputBuffer(i + K)
    Next K
End Sub
Private Sub MD5Transform(Buffer() As Byte)
    Dim X(16) As Long, A As Long, B As Long, c As Long, d As Long
   
    A = State(1)
    B = State(2)
    c = State(3)
    d = State(4)
    Decode 64, X, Buffer
    FF A, B, c, d, X(0), S11, -680876936
    FF d, A, B, c, X(1), S12, -389564586
    FF c, d, A, B, X(2), S13, 606105819
    FF B, c, d, A, X(3), S14, -1044525330
    FF A, B, c, d, X(4), S11, -176418897
    FF d, A, B, c, X(5), S12, 1200080426
    FF c, d, A, B, X(6), S13, -1473231341
    FF B, c, d, A, X(7), S14, -45705983
    FF A, B, c, d, X(8), S11, 1770035416
    FF d, A, B, c, X(9), S12, -1958414417
    FF c, d, A, B, X(10), S13, -42063
    FF B, c, d, A, X(11), S14, -1990404162
    FF A, B, c, d, X(12), S11, 1804603682
    FF d, A, B, c, X(13), S12, -40341101
    FF c, d, A, B, X(14), S13, -1502002290
    FF B, c, d, A, X(15), S14, 1236535329

    GG A, B, c, d, X(1), S21, -165796510
    GG d, A, B, c, X(6), S22, -1069501632
    GG c, d, A, B, X(11), S23, 643717713
    GG B, c, d, A, X(0), S24, -373897302
    GG A, B, c, d, X(5), S21, -701558691
    GG d, A, B, c, X(10), S22, 38016083
    GG c, d, A, B, X(15), S23, -660478335
    GG B, c, d, A, X(4), S24, -405537848
    GG A, B, c, d, X(9), S21, 568446438
    GG d, A, B, c, X(14), S22, -1019803690
    GG c, d, A, B, X(3), S23, -187363961
    GG B, c, d, A, X(8), S24, 1163531501
    GG A, B, c, d, X(13), S21, -1444681467
    GG d, A, B, c, X(2), S22, -51403784
    GG c, d, A, B, X(7), S23, 1735328473
    GG B, c, d, A, X(12), S24, -1926607734

    HH A, B, c, d, X(5), S31, -378558
    HH d, A, B, c, X(8), S32, -2022574463
    HH c, d, A, B, X(11), S33, 1839030562
    HH B, c, d, A, X(14), S34, -35309556
    HH A, B, c, d, X(1), S31, -1530992060
    HH d, A, B, c, X(4), S32, 1272893353
    HH c, d, A, B, X(7), S33, -155497632
    HH B, c, d, A, X(10), S34, -1094730640
    HH A, B, c, d, X(13), S31, 681279174
    HH d, A, B, c, X(0), S32, -358537222
    HH c, d, A, B, X(3), S33, -722521979
    HH B, c, d, A, X(6), S34, 76029189
    HH A, B, c, d, X(9), S31, -640364487
    HH d, A, B, c, X(12), S32, -421815835
    HH c, d, A, B, X(15), S33, 530742520
    HH B, c, d, A, X(2), S34, -995338651

    II A, B, c, d, X(0), S41, -198630844
    II d, A, B, c, X(7), S42, 1126891415
    II c, d, A, B, X(14), S43, -1416354905
    II B, c, d, A, X(5), S44, -57434055
    II A, B, c, d, X(12), S41, 1700485571
    II d, A, B, c, X(3), S42, -1894986606
    II c, d, A, B, X(10), S43, -1051523
    II B, c, d, A, X(1), S44, -2054922799
    II A, B, c, d, X(8), S41, 1873313359
    II d, A, B, c, X(15), S42, -30611744
    II c, d, A, B, X(6), S43, -1560198380
    II B, c, d, A, X(13), S44, 1309151649
    II A, B, c, d, X(4), S41, -145523070
    II d, A, B, c, X(11), S42, -1120210379
    II c, d, A, B, X(2), S43, 718787259
    II B, c, d, A, X(9), S44, -343485551

    State(1) = LongOverflowAdd(State(1), A)
    State(2) = LongOverflowAdd(State(2), B)
    State(3) = LongOverflowAdd(State(3), c)
    State(4) = LongOverflowAdd(State(4), d)
End Sub

Private Sub Decode(Length As Integer, OutputBuffer() As Long, InputBuffer() As Byte)
    Dim intDblIndex As Integer, intByteIndex As Integer, dblSum As Double
    For intByteIndex = 0 To Length - 1 Step 4
        dblSum = InputBuffer(intByteIndex) + InputBuffer(intByteIndex + 1) * 256# + InputBuffer(intByteIndex + 2) * 65536# + InputBuffer(intByteIndex + 3) * 16777216#
        OutputBuffer(intDblIndex) = UnsignedToLong(dblSum)
        intDblIndex = intDblIndex + 1
    Next intByteIndex
End Sub
Private Function FF(A As Long, B As Long, c As Long, d As Long, X As Long, s As Long, ac As Long) As Long
    A = LongOverflowAdd4(A, (B And c) Or (Not (B) And d), X, ac)
    A = LongLeftRotate(A, s)
    A = LongOverflowAdd(A, B)
End Function
Private Function GG(A As Long, B As Long, c As Long, d As Long, X As Long, s As Long, ac As Long) As Long
    A = LongOverflowAdd4(A, (B And d) Or (c And Not (d)), X, ac)
    A = LongLeftRotate(A, s)
    A = LongOverflowAdd(A, B)
End Function
Private Function HH(A As Long, B As Long, c As Long, d As Long, X As Long, s As Long, ac As Long) As Long
    A = LongOverflowAdd4(A, B Xor c Xor d, X, ac)
    A = LongLeftRotate(A, s)
    A = LongOverflowAdd(A, B)
End Function
Private Function II(A As Long, B As Long, c As Long, d As Long, X As Long, s As Long, ac As Long) As Long
    A = LongOverflowAdd4(A, c Xor (B Or Not (d)), X, ac)
    A = LongLeftRotate(A, s)
    A = LongOverflowAdd(A, B)
End Function

Function LongLeftRotate(value As Long, Bits As Long) As Long
    Dim lngSign As Long, lngI As Long
    Bits = Bits Mod 32
    If Bits = 0 Then LongLeftRotate = value: Exit Function
    For lngI = 1 To Bits
        lngSign = value And &HC0000000
        value = (value And &H3FFFFFFF) * 2
        value = value Or ((lngSign < 0) And 1) Or (CBool(lngSign And &H40000000) And &H80000000)
    Next
    LongLeftRotate = value
End Function
Private Function LongOverflowAdd(Val1 As Long, Val2 As Long) As Long
    Dim lngHighWord As Long, lngLowWord As Long, lngOverflow As Long
    lngLowWord = (Val1 And &HFFFF&) + (Val2 And &HFFFF&)
    lngOverflow = lngLowWord \ 65536
    lngHighWord = (((Val1 And &HFFFF0000) \ 65536) + ((Val2 And &HFFFF0000) \ 65536) + lngOverflow) And &HFFFF&
    LongOverflowAdd = UnsignedToLong((lngHighWord * 65536#) + (lngLowWord And &HFFFF&))
End Function
Private Function LongOverflowAdd4(Val1 As Long, Val2 As Long, val3 As Long, val4 As Long) As Long
    Dim lngHighWord As Long, lngLowWord As Long, lngOverflow As Long
    lngLowWord = (Val1 And &HFFFF&) + (Val2 And &HFFFF&) + (val3 And &HFFFF&) + (val4 And &HFFFF&)
    lngOverflow = lngLowWord \ 65536
    lngHighWord = (((Val1 And &HFFFF0000) \ 65536) + ((Val2 And &HFFFF0000) \ 65536) + ((val3 And &HFFFF0000) \ 65536) + ((val4 And &HFFFF0000) \ 65536) + lngOverflow) And &HFFFF&
    LongOverflowAdd4 = UnsignedToLong((lngHighWord * 65536#) + (lngLowWord And &HFFFF&))
End Function

Private Function UnsignedToLong(value As Double) As Long
    If value < 0 Or value >= OFFSET_4 Then Error 6
    If value <= MAXINT_4 Then UnsignedToLong = value Else UnsignedToLong = value - OFFSET_4
End Function
Private Function LongToUnsigned(value As Long) As Double
    If value < 0 Then LongToUnsigned = value + OFFSET_4 Else LongToUnsigned = value
End Function

Sekarang tinggal tambahkan Usser Controls.
  
 


Related Posts Plugin for WordPress, Blogger...
Free Monkey ani Cursors at www.totallyfreecursors.com