Jakarta - Umumnya komputer dengan spesifikasi tinggi dimasukkan ke dalam casing full tower berukuran besar, dan membutuhkan catu daya yang besar pula. Tapi komputer mungil ini sangat berbeda.
PC
berukuran kecil tampaknya akan menjadi sebuah tren baru di industri
komputer. Lihat saja komputer mungi yang satu ini, bentuknya kecil dan
ringan hingga bisa dijinjing dengan satu tangan. Tapi soal performa,
produk bernama Stealth Extreme Power LC-480 ini terlihat begitu
menjanjikan.
Di dalam tubuhnya yang kecil terdapat prosesor Intel
Core i7 generasi ketiga alias sudah berbasis Ivy Bridge. Core i7 3610QE
4 inti yang berada di dalamnya memiliki kecepatan 2,3 GHz (3,3 GHz
dengan Turbo mode), 6 MB cache memori, serta sudah mendukung teknologi
Hyper-Threading. Jadi seolah-olah pengguna memiliki prosesor 8 inti.
Memori
utama ditopang oleh RAM DDR3 dengan kapasitas bervariasi, tersedia
mulai dari 4 GB sampai 16 GB. Sedangkan komponen lain yang terdapat di
dalamnya adalah satu unit DVD-rom slim, hardisk ukuran 2,2 inch, 4 buah
port USB 3.0, 2 port USB 2.0, DVI, VGA, LAN, serta port audio.
Seperti dikutip detikINET dari Maximum PC, Selasa (26/3/2013), produk dengan berat sekitar 1,5 kg ini mulai dijual di pasaran dengan harga USD 1.325.
Rabu, 26 Juni 2013
'Penjualan Windows Phone Lampaui iPhone & BlackBerry'
Jakarta - Microsoft mengklaim penjualan handset
berbasis Windows Phone sudah cukup menggembirakan. Bahkan mereka
menyatakan bahwa Windows Phone lebih laris dari BlackBerry dan iPhone di
beberapa negara.
"Windows Phone mencapai pangsa pasar 10% di beberapa negara dan menurut laporan terakhir IDC, pengapalannya melampaui BlackBerry di 26 wilayah dan melampaui iPhone di 7 negara," kata Frank X Shaw, Corporate Vice President Microsoft.
Akan tetapi Shaw tidak menjelaskan secara detail di negara mana saja Windows Phone mengalahkan iPhone dan BlackBerry. Sedangkan data IDC yang diambil mungkin laporan kuartal terakhir 2012.
Media New York Times menyatakan bahwa Windows Phone berhasil mengalahkan Apple iPhone di Argentina, India, Polandia, Rusia, Afrika Selatan dan Ukraina. Untuk BlackBerry, belum diketahui di negara mana saja ia dikalahkan Windows Phone sesuai klaim Microsoft.
Jika benar, jelas ini merupakan kabar yang lumayan baik bagi Microsoft dan partner utamanya, seperti Nokia dan HTC. Demikian seperti dikutip detikINET dari The Register, Kamis (28/3/2013).
"Windows Phone mencapai pangsa pasar 10% di beberapa negara dan menurut laporan terakhir IDC, pengapalannya melampaui BlackBerry di 26 wilayah dan melampaui iPhone di 7 negara," kata Frank X Shaw, Corporate Vice President Microsoft.
Akan tetapi Shaw tidak menjelaskan secara detail di negara mana saja Windows Phone mengalahkan iPhone dan BlackBerry. Sedangkan data IDC yang diambil mungkin laporan kuartal terakhir 2012.
Media New York Times menyatakan bahwa Windows Phone berhasil mengalahkan Apple iPhone di Argentina, India, Polandia, Rusia, Afrika Selatan dan Ukraina. Untuk BlackBerry, belum diketahui di negara mana saja ia dikalahkan Windows Phone sesuai klaim Microsoft.
Jika benar, jelas ini merupakan kabar yang lumayan baik bagi Microsoft dan partner utamanya, seperti Nokia dan HTC. Demikian seperti dikutip detikINET dari The Register, Kamis (28/3/2013).
Big Touch, PC All-in-One Terbesar di Dunia
Jakarta - Pengalaman menggunakan dukungan layar sentuh
pada Windows 8 memang menarik. Tapi bagaimana rasanya bila layar sentuh
yang digunakan berukuran 55 inch? Hal tersebut sungguh direalisasikan
oleh perusahaan asal Oregon, AS yakni InFocus.
Produsen yang lebih dikenal di Indonesia dengan produk perangkat proyektornya tersebut baru saja meluncurkan komputer desktop All-in-One bernama Big Touch. Penggunaan nama Big Touch jelas bukan tanpa alasan karena InFocus selaku pembesutnya menggunakan layar berukuran tidak biasa. Yup, 55 inch!
Selain berukuran ekstra lebar, layar yang digunakan pada Big Touch juga telah mendukung fungsi layar sentuh dengan fitur multitouch hingga 5 titik. Tentunya dengan ukuran sebesar itu, resolusi yang diadopsinya dipastikan telah menganut resolusi full HD yakni 1920x1080 pixel.
"Bayangkan berinteraksi dengan aplikasi apapun yang ada dengan layar cantik full HD berukuran 55 inch," ucap Robert Detwiler selaku Product Manager InFocus.
"Big Touch merupakan solusi bagi lembaga pendidikan dan juga perusahaan software yang ingin mendemonstrasikan produknya dalam skala yang lebih besar. Big Touch disiapkan bagi pengguna yang menginginkan pengalaman berbeda merasakan dukungan layar sentuh Windows 8 pada layar berukuran super lebar," imbuhnya.
Dikutip detikINET dari Marketwire, Rabu (27/3/2013), di balik layar 55 inch-nya, Big Touch dipersenjatai prosesor Core i5, media penyimpanan SSD 120 GB, 2 konektor HDMI, 6 port USB, konektivitas WiFi, dan 2 ethernet gigabit.
Namun bagi pengguna yang berminat menebusnya sepertinya harus merogoh kocek cukup dalam karena InFocus membanderolnya dengan harga yang lumayan tinggi yakni USD 5.000 atau sekitar Rp 48 jutaan. Berminat?
Produsen yang lebih dikenal di Indonesia dengan produk perangkat proyektornya tersebut baru saja meluncurkan komputer desktop All-in-One bernama Big Touch. Penggunaan nama Big Touch jelas bukan tanpa alasan karena InFocus selaku pembesutnya menggunakan layar berukuran tidak biasa. Yup, 55 inch!
Selain berukuran ekstra lebar, layar yang digunakan pada Big Touch juga telah mendukung fungsi layar sentuh dengan fitur multitouch hingga 5 titik. Tentunya dengan ukuran sebesar itu, resolusi yang diadopsinya dipastikan telah menganut resolusi full HD yakni 1920x1080 pixel.
"Bayangkan berinteraksi dengan aplikasi apapun yang ada dengan layar cantik full HD berukuran 55 inch," ucap Robert Detwiler selaku Product Manager InFocus.
"Big Touch merupakan solusi bagi lembaga pendidikan dan juga perusahaan software yang ingin mendemonstrasikan produknya dalam skala yang lebih besar. Big Touch disiapkan bagi pengguna yang menginginkan pengalaman berbeda merasakan dukungan layar sentuh Windows 8 pada layar berukuran super lebar," imbuhnya.
Dikutip detikINET dari Marketwire, Rabu (27/3/2013), di balik layar 55 inch-nya, Big Touch dipersenjatai prosesor Core i5, media penyimpanan SSD 120 GB, 2 konektor HDMI, 6 port USB, konektivitas WiFi, dan 2 ethernet gigabit.
Namun bagi pengguna yang berminat menebusnya sepertinya harus merogoh kocek cukup dalam karena InFocus membanderolnya dengan harga yang lumayan tinggi yakni USD 5.000 atau sekitar Rp 48 jutaan. Berminat?
Popularitas Tablet PC & Smartphone Ancam Microsoft
Jakarta - Bisnis inti Microsoft adalah memproduksi
sistem operasi Windows dan software untuk komputer PC. Namun semakin
populernya tablet PC dan smartphone dinilai membuat bisnis Microsoft
semakin terancam.
Biro riset Gartner menyatakan bahwa penjualan tablet akan melampaui kombinasi penjualan komputer desktop dan laptop pada tahun 2015. Dan pada tahun 2017, pengapalan perangkat berbasis OS Android diprediksi melebihi perangkat Windows.
Dalam segmen tablet PC, Microsoft memang masih kesulitan menyaingi keperkasaan Android dan iOS. Android pada khususnya, diproyeksi akan diinstal di lebih dari 1 miliar perangkat yang dikapalkan di tahun 2014.
Microsoft pun dinilai perlu memaksimalkan platform Windows 8 di tablet dan smartphone, yang saat ini masih jauh tertinggal pangsa pasarnya dibandingkan pesaing. Atau mereka akan kehilangan potensi pendapatan yang besar.
"Memenangkan persaingan tablet dan ponsel penting bagi mereka untuk tetap relevan dalam perubahan ini," kata Carolina Milanesi dari Gartner yang dikutip detikINET dari Guardian, Sabtu (6/4/2013)
Biro riset Gartner menyatakan bahwa penjualan tablet akan melampaui kombinasi penjualan komputer desktop dan laptop pada tahun 2015. Dan pada tahun 2017, pengapalan perangkat berbasis OS Android diprediksi melebihi perangkat Windows.
Dalam segmen tablet PC, Microsoft memang masih kesulitan menyaingi keperkasaan Android dan iOS. Android pada khususnya, diproyeksi akan diinstal di lebih dari 1 miliar perangkat yang dikapalkan di tahun 2014.
Microsoft pun dinilai perlu memaksimalkan platform Windows 8 di tablet dan smartphone, yang saat ini masih jauh tertinggal pangsa pasarnya dibandingkan pesaing. Atau mereka akan kehilangan potensi pendapatan yang besar.
"Memenangkan persaingan tablet dan ponsel penting bagi mereka untuk tetap relevan dalam perubahan ini," kata Carolina Milanesi dari Gartner yang dikutip detikINET dari Guardian, Sabtu (6/4/2013)
Microsoft Ikut Buat Jam Tangan Pintar?
Washington - Ide jam tangan pintar tampaknya tengah
diminati sejumlah perusahaan teknologi, tak terkecuali Microsoft.
Kabarnya, raksasa software ini tengah mencari sejumlah komponen untuk
membuat jam tangan pintar.
Dilansir Wall Street Journal, Senin (15/4/2013), Microsoft saat ini tengah rajin menghubungi para pemasok komponen di Asia untuk gadget terbaru yang sedang dikembangkannya tersebut.
Mengutip pernyataan dari salah satu eksekutif Microsoft, Wall Street Journal melaporkan, sang eksekutif tersebut telah bertemu dengan tim riset dan pengembangan Microsoft di Redmond, Washington. Namun belum jelas, apakah Microsoft akan memproduksi perangkat tersebut atau tidak.
Sejak Apple mencuri perhatian dengan kabar akan membuat jam tangan pintar bernama iWatch, perusahaan teknologi lain tak mau ketinggalan. Samsung dan Google langsung gerak cepat mengumumkan rencananya menciptakan produk serupa.
Jika Apple baru sekadar rumor, Samsung dengan tegas memastikan akan segera mengembangkan piranti unik tersebut. Selain Samsung dan Google dan kini Microsoft, jam tangan pintar juga dikembangkan Sony, Motorola dan sejumlah perusahaan teknologi lainnya.
Dilansir Wall Street Journal, Senin (15/4/2013), Microsoft saat ini tengah rajin menghubungi para pemasok komponen di Asia untuk gadget terbaru yang sedang dikembangkannya tersebut.
Mengutip pernyataan dari salah satu eksekutif Microsoft, Wall Street Journal melaporkan, sang eksekutif tersebut telah bertemu dengan tim riset dan pengembangan Microsoft di Redmond, Washington. Namun belum jelas, apakah Microsoft akan memproduksi perangkat tersebut atau tidak.
Sejak Apple mencuri perhatian dengan kabar akan membuat jam tangan pintar bernama iWatch, perusahaan teknologi lain tak mau ketinggalan. Samsung dan Google langsung gerak cepat mengumumkan rencananya menciptakan produk serupa.
Jika Apple baru sekadar rumor, Samsung dengan tegas memastikan akan segera mengembangkan piranti unik tersebut. Selain Samsung dan Google dan kini Microsoft, jam tangan pintar juga dikembangkan Sony, Motorola dan sejumlah perusahaan teknologi lainnya.
Microsoft Bikin Ponsel Surface, Jika...
Washington - Microsoft santer dikabarkan bakal membuat
smartphone. Sumber lain menyebutkan, ponselnya ini akan diberi nama sama
dengan tabletnya, Surface. Lantas, apa kata Microsoft?
Dikutip detikINET dari Tech Radar, Rabu (17/4/2013), Head of Windows Phone Terry Myerson menyebutkan, ponsel Surface tidak ada dalam daftar pengembangan Microsoft, setidaknya belum untuk saat ini.
"Kecuali jika Nokia atau HTC tidak memberikan pengalaman konsumen yang semestinya dengan platform kami," kata Myerson. Nokia dan HTC merupakan dua partner Microsoft dalam menelurkan Windows Phone.
Saat ditanya mengenai kemitraannya dengan kedua vendor yang disebutnya, Myerson menyebutkan Microsoft sejauh ini sangat puas. Dia bahkan menyebut Nokia adalah mitra yang hebat bagi Microsoft.
Sejauh ini, raksasa software itu sudah berupaya keras mengukir prestasi yang baik untuk smartphone berbasis Windows. Nokia yang menjadi salah satu partnernya terbilang cukup berhasil mencuri perhatian dengan seri Lumia Windows Phone-nya.
Dikutip detikINET dari Tech Radar, Rabu (17/4/2013), Head of Windows Phone Terry Myerson menyebutkan, ponsel Surface tidak ada dalam daftar pengembangan Microsoft, setidaknya belum untuk saat ini.
"Kecuali jika Nokia atau HTC tidak memberikan pengalaman konsumen yang semestinya dengan platform kami," kata Myerson. Nokia dan HTC merupakan dua partner Microsoft dalam menelurkan Windows Phone.
Saat ditanya mengenai kemitraannya dengan kedua vendor yang disebutnya, Myerson menyebutkan Microsoft sejauh ini sangat puas. Dia bahkan menyebut Nokia adalah mitra yang hebat bagi Microsoft.
Sejauh ini, raksasa software itu sudah berupaya keras mengukir prestasi yang baik untuk smartphone berbasis Windows. Nokia yang menjadi salah satu partnernya terbilang cukup berhasil mencuri perhatian dengan seri Lumia Windows Phone-nya.
Toko Microsoft Tantang Apple Store
Amerika Serikat - Bukan hal yang aneh jika Microsoft
berupaya memperbanyak kehadiran tokonya di Amerika Serikat (AS). Namun
kali ini, Microsoft bertindak lebih agresif, yakni membuka toko persis
di sebelah rivalnya, Apple Store.
Berdasarkan laporan yang dilansir Daily Record, Rabu (1/5/2013), Microsoft saat ini tengah mengurus perizinan untuk membuka toko baru di St. John Town Center. Lokasi strategis ini juga dipilih Apple untuk memasarkan gadgetnya.
Microsoft kabarnya rela merogoh kocek hingga USD 400 ribu untuk bisa mendirikan toko di sana. Berdirinya toko ini akan memudahkan konsumen menemukan produk terbaru Microsoft, termasuk OS Windows, tablet Surface dan solusi software lainnya.
Raksasa software ini pun tampaknya berharap, konsumen yang mengujungi Apple Store akan terpancing rasa penasaran mereka untuk berkunjung ke toko di sebelahnya.
Untuk memastikan perusahaannya mendapat izin, Microsoft juga berjanji untuk mendonasikan lebih dari USD 1 juta kepada organisasi teknologi setempat, berupa software gratis.
Berdasarkan laporan yang dilansir Daily Record, Rabu (1/5/2013), Microsoft saat ini tengah mengurus perizinan untuk membuka toko baru di St. John Town Center. Lokasi strategis ini juga dipilih Apple untuk memasarkan gadgetnya.
Microsoft kabarnya rela merogoh kocek hingga USD 400 ribu untuk bisa mendirikan toko di sana. Berdirinya toko ini akan memudahkan konsumen menemukan produk terbaru Microsoft, termasuk OS Windows, tablet Surface dan solusi software lainnya.
Raksasa software ini pun tampaknya berharap, konsumen yang mengujungi Apple Store akan terpancing rasa penasaran mereka untuk berkunjung ke toko di sebelahnya.
Untuk memastikan perusahaannya mendapat izin, Microsoft juga berjanji untuk mendonasikan lebih dari USD 1 juta kepada organisasi teknologi setempat, berupa software gratis.
Microsoft: 100 Juta Lebih Lisensi Windows 8 Terjual
Washington - Microsoft tampaknya akan semakin giat
berjualan Windows 8. Penjualannya terus tumbuh. Microsoft mengklaim,
lebih dari 100 juta lisensi Windows 8 terjual.
"Jika ada lebih banyak perangkat layar sentuh di pasar, jumlahnya bahkan bisa lebih banyak. Penjualan kami terus bertumbuh secara konsisten," kata Tami Reller, Chief Financial Officer Windows Client Team di Microsoft, seperti dikutip dari ZDNet, Selasa (7/5/2013).
Microsoft sukses menjual lebih dari 40 juta kopi Windows 8 dalam satu bulan pertama sejak dirilis. Sistem operasi terbaru Microsoft ini terbilang cepat diadaptasi oleh pengguna.
"Windows 8 melampaui Windows 7 untuk urusan upgrade," demikian klaim juru bicara Microsoft Brandon LeBlanc melalui Windows blog kala itu.
Pencapaian selanjutnya, pada 8 Januari 2013, angkanya bertambah menjadi 60 juta lisensi. Ini tentu saja kian menambah optimisme Microsoft atas Windows 8 ke depannya.
Jumlah tersebut meliputi upgrade dari Windows 7 dan instalasi baru. Ini juga termasuk penjualan lisensi manufaktur PC dan tablet secara massal. Microsoft tidak berkomentar mengenai bagaiman upgrade penjualan dibandingkan dengan instalasi baru. Perusahaan software ini juga tidak merinci porsi Windows RT dan Windows 8 dalam total penjualan lisensi.
"Jika ada lebih banyak perangkat layar sentuh di pasar, jumlahnya bahkan bisa lebih banyak. Penjualan kami terus bertumbuh secara konsisten," kata Tami Reller, Chief Financial Officer Windows Client Team di Microsoft, seperti dikutip dari ZDNet, Selasa (7/5/2013).
Microsoft sukses menjual lebih dari 40 juta kopi Windows 8 dalam satu bulan pertama sejak dirilis. Sistem operasi terbaru Microsoft ini terbilang cepat diadaptasi oleh pengguna.
"Windows 8 melampaui Windows 7 untuk urusan upgrade," demikian klaim juru bicara Microsoft Brandon LeBlanc melalui Windows blog kala itu.
Pencapaian selanjutnya, pada 8 Januari 2013, angkanya bertambah menjadi 60 juta lisensi. Ini tentu saja kian menambah optimisme Microsoft atas Windows 8 ke depannya.
Jumlah tersebut meliputi upgrade dari Windows 7 dan instalasi baru. Ini juga termasuk penjualan lisensi manufaktur PC dan tablet secara massal. Microsoft tidak berkomentar mengenai bagaiman upgrade penjualan dibandingkan dengan instalasi baru. Perusahaan software ini juga tidak merinci porsi Windows RT dan Windows 8 dalam total penjualan lisensi.
Microsoft Pastikan Windows Blue Hadir Tahun Ini
Jakarta - Informasi mengenai kedatangan Windows Blue
atau Windows 8.1 sudah mendapat kejelasan dari Microsoft. Setelah
rumornya yang merebak, kini perusahaan teknologi tersebut memastikan
bahwa akan mendatangkan sistem operasi barunya itu di tahun ini.
Pengumuman tersebut dibuat sendiri oleh Head of Windows Engineering, Julie Larson-Green. Dalam sebuah konferensi di New York, AS, ia juga memberikan informasi mengenai kapan user bisa mencicipi dulu produk tersebut.
Untuk public preview, Microsoft akan menghadirkan sistem operasi dengan nama kode Windows Blue itu pada akhir bulan Juni ini, kemungkinan saat Microsoft menggelar konferensi Build Developer. Produk tersebut akan tersedia bagi siapapun yang memiliki Windows 8, melalui Windows Store.
Sebelumnya, Windows CFO Tami Reller mengungkapkan bahwa perusahannya berencana membuat perubahan di Windows 8.1 terkait umpan balik dari customer. Berbicara mengenai Start Button di Windows 8, Reller mengatakan, "Kami juga mencoba mengerti apa yang sebenarnya diminta orang saat mereka meminta hal itu," tukasnya seperti dikutip dari TheVerge, Rabu (8/5/2013).
Adapun dari bocoran sebelumnya, perubahan yang ada di Windows 8.1 di antaranya adalah Start Screen yang diperbaiki dan opsi yang lebih banyak untuk kustomisasi warna serta tema.
Pengumuman tersebut dibuat sendiri oleh Head of Windows Engineering, Julie Larson-Green. Dalam sebuah konferensi di New York, AS, ia juga memberikan informasi mengenai kapan user bisa mencicipi dulu produk tersebut.
Untuk public preview, Microsoft akan menghadirkan sistem operasi dengan nama kode Windows Blue itu pada akhir bulan Juni ini, kemungkinan saat Microsoft menggelar konferensi Build Developer. Produk tersebut akan tersedia bagi siapapun yang memiliki Windows 8, melalui Windows Store.
Sebelumnya, Windows CFO Tami Reller mengungkapkan bahwa perusahannya berencana membuat perubahan di Windows 8.1 terkait umpan balik dari customer. Berbicara mengenai Start Button di Windows 8, Reller mengatakan, "Kami juga mencoba mengerti apa yang sebenarnya diminta orang saat mereka meminta hal itu," tukasnya seperti dikutip dari TheVerge, Rabu (8/5/2013).
Adapun dari bocoran sebelumnya, perubahan yang ada di Windows 8.1 di antaranya adalah Start Screen yang diperbaiki dan opsi yang lebih banyak untuk kustomisasi warna serta tema.
Windows 8 Mengolok-olok iPad
Jakarta - Microsoft menyerang habis-habisan iPad Apple
lewat video komersialnya. Dalam iklan tersebut, fitur andalan iPad --
asisten digital Siri -- digambarkan bertekuk lutut di hadapan tablet
Windows 8.
Saling sindir di antara gadget populer memang makin sering terjadi. Bahkan, eskalasinya sudah bukan menyindir halus lagi, melainkan telah perang terbuka.
Salah satunya seperti yang dilakukan Windows 8 kepada iPad dalam iklan berikut. Kedua produk -- tablet Windows 8 dan iPad -- disandingkan bersebelahan.
Ketika tablet Windows 8 melakukan suatu kebolehan, seperti melakukan multitasking dan editing Power Point -- Siri di iPad mengaku tidak bisa melakukannya.
Lantas apa yang bisa dilakukan iPad? Memainkan lagu 'chopstick' di piano. Chopstick sendiri adalah lagu yang dipakai Apple saat mempromosikan iPad Mini.
Di akhir iklan tersebut, lantas disandingkan harga dari iPad versi 64 GB USD 699 dengan Asus VivoTab Smart 64 GB seharga USD 449 yang sudah dibenamkan Windows 8
Saling sindir di antara gadget populer memang makin sering terjadi. Bahkan, eskalasinya sudah bukan menyindir halus lagi, melainkan telah perang terbuka.
Salah satunya seperti yang dilakukan Windows 8 kepada iPad dalam iklan berikut. Kedua produk -- tablet Windows 8 dan iPad -- disandingkan bersebelahan.
Ketika tablet Windows 8 melakukan suatu kebolehan, seperti melakukan multitasking dan editing Power Point -- Siri di iPad mengaku tidak bisa melakukannya.
Lantas apa yang bisa dilakukan iPad? Memainkan lagu 'chopstick' di piano. Chopstick sendiri adalah lagu yang dipakai Apple saat mempromosikan iPad Mini.
Di akhir iklan tersebut, lantas disandingkan harga dari iPad versi 64 GB USD 699 dengan Asus VivoTab Smart 64 GB seharga USD 449 yang sudah dibenamkan Windows 8
Seperti Ini Bentuk Tombol Start di Windows 8.1
Tampilan desktop Windows 8.1 (theregister)
Jakarta - Kabar mengenai kehadiran tombol start di Windows 8.1 semakin mendekati kenyataan. Baru-baru ini beredar sebuah screenshot yang memperlihatkan bentuk tombol tersebut.
Tombol tersebut terletak di pojok kiri bawah layar. Bentuknya mengusung logo Windows 8, dengan satu warna monochrome. Agak terlihat sedikit old school memang, tapi saat mouse digeserkan ke tombol tersebut maka logo akan berubah warna.
Dari sisi interface, Windows 8.1 tidak akan berbeda dengan versi sebelumnya. Hanya saja kali ini pengguna diberi kebebasan untuk memilih home screen, mau kotak-kotak ala Live Tile, atau bisa langsung ke daftar menu aplikasi.
Daftar aplikasi yang akan muncul pada halaman utama juga bisa disesuaikan. Pada Windows 8.1 ini pengguna bisa mengurutkan aplikasi berdasarkan nama, atau dari yang paling sering digunakan.
Perubahan lain dari sisi tampilan adalah background pada daftar aplikasi yang bisa disamakan dengan desktop. Dengan ini, pengguna akan mendapatkan efek perpindahan dari aplikasi ke desktop yang lebih modern.
Sayangnya, seperti dikutip detikINET dari The Register, Kamis (30/5/2013), belum diketahui kapan Windows 8.1 akan dirilis. Namun Microsoft berjanji untuk memberikan preview sistem operasi tersebut pada Juni 2013.
(eno/rns)
Tombol tersebut terletak di pojok kiri bawah layar. Bentuknya mengusung logo Windows 8, dengan satu warna monochrome. Agak terlihat sedikit old school memang, tapi saat mouse digeserkan ke tombol tersebut maka logo akan berubah warna.
Dari sisi interface, Windows 8.1 tidak akan berbeda dengan versi sebelumnya. Hanya saja kali ini pengguna diberi kebebasan untuk memilih home screen, mau kotak-kotak ala Live Tile, atau bisa langsung ke daftar menu aplikasi.
Daftar aplikasi yang akan muncul pada halaman utama juga bisa disesuaikan. Pada Windows 8.1 ini pengguna bisa mengurutkan aplikasi berdasarkan nama, atau dari yang paling sering digunakan.
Perubahan lain dari sisi tampilan adalah background pada daftar aplikasi yang bisa disamakan dengan desktop. Dengan ini, pengguna akan mendapatkan efek perpindahan dari aplikasi ke desktop yang lebih modern.
Sayangnya, seperti dikutip detikINET dari The Register, Kamis (30/5/2013), belum diketahui kapan Windows 8.1 akan dirilis. Namun Microsoft berjanji untuk memberikan preview sistem operasi tersebut pada Juni 2013.
(eno/rns)
Panasonic Lempar Tablet dan Laptop Tahan Banting
Jakarta - Mencoba menciptakan perbedaan, Panasonic menyasar segmen khusus dengan seri perangkat tangguh di bawah brand Toughbook. Tahan banting dan bandel di segala kondisi, menjadi keunggulan yang disodorkannya kepada para pengguna outdoor.
Dikatakan Satoshi Mizobata, Director Panasonic Toughbook Asia Pacific, Panasonic sejak 1996 telah fokus mengembangkan teknologi tangguh di lini Toughbook. Perangkat ini tak lain ditujukan untuk menunjang produktivitas para pekerja lapangan. Dua perangkat Toughbook terbaru pun mulai memasuki pasar Indonesia hari ini.
"Masih mendukung konsep efisiensi dan mobilitas bisnis tanpa hambatan teknologi dan lingkungan, kini Panasonic memperkenalkan Toughpad FZ-G1 dan Toughbook CF-AX2," kata Satoshi memperkenalkan dua perangkat baru tersebut di acara Panasonic yang digelar di Ritz Carlton, Jakarta, Rabu (29/5/2013).
Toughpad FZ-G1 adalah tablet berbasis Windows 8 Pro dengan layar berukuran 10 inch. Sementara Toughbook CF-AX2, merupakan ultrabook yang juga berbasis Windows 8 Pro dengan bobot 1,15 kg.
Dengan desain flip-over yang unik, ultrabook ini bisa berfungsi sebagai notebook atau tablet. Untuk memenuhi kebutuhan keamanan, kedua perangkat ini dilengkapi Mobile Device Managament tools.
Untuk membuktikan ketangguhannya, Satoshi juga memperagakan bagaimana perangkat ini dibanting, diinjak sampai disiram air. Ajaib, perangkat ini tetap menyala dan bekerja dengan baik.
Banderol perangkat lini Toughbook memang tidak murah. Berada di kisaran USD 1.000 - USD 7.000, wajar produk Panasonic ini bukan untuk konsumen retail, melainkan menyasar segmen korporat.
"Di Indonesia kita baru mengedukasi pasar korporat. Konsumen kami umumnya adalah kalangan pemerintah, konstruksi, perusahaan healthcare dan lain-lain. Soal harga, dengan semua teknologi ini memang lebih mahal, tapi masa pakainya bisa 3-4 kali lebih bermanfaat sesuai kebutuhan pekerja," ujar Satoshi.
Bibang S. Teng, Managing Director Visi Mandiri Baru yang ditunjuk sebagai distributor perangkat Toughbook di Indonesia menambahkan, untuk mengedukasi pasar nantinya mereka akan mendatangi sejumlah industri dan lembaga memperkenalkan fitur-fitur Toughbook.
"Kita akan datang ke industri, government, perusahaan konstruksi telekomunikasi, healthcare dan lain-lain. Kita bisa adakan seminar, workshop atau event untuk memperlihatkan perangkat semacam ini cocok untuk worker mereka yang ada di lapangan," tandasnya, berpromosi.
Dikatakan Satoshi Mizobata, Director Panasonic Toughbook Asia Pacific, Panasonic sejak 1996 telah fokus mengembangkan teknologi tangguh di lini Toughbook. Perangkat ini tak lain ditujukan untuk menunjang produktivitas para pekerja lapangan. Dua perangkat Toughbook terbaru pun mulai memasuki pasar Indonesia hari ini.
"Masih mendukung konsep efisiensi dan mobilitas bisnis tanpa hambatan teknologi dan lingkungan, kini Panasonic memperkenalkan Toughpad FZ-G1 dan Toughbook CF-AX2," kata Satoshi memperkenalkan dua perangkat baru tersebut di acara Panasonic yang digelar di Ritz Carlton, Jakarta, Rabu (29/5/2013).
Toughpad FZ-G1 adalah tablet berbasis Windows 8 Pro dengan layar berukuran 10 inch. Sementara Toughbook CF-AX2, merupakan ultrabook yang juga berbasis Windows 8 Pro dengan bobot 1,15 kg.
Dengan desain flip-over yang unik, ultrabook ini bisa berfungsi sebagai notebook atau tablet. Untuk memenuhi kebutuhan keamanan, kedua perangkat ini dilengkapi Mobile Device Managament tools.
Untuk membuktikan ketangguhannya, Satoshi juga memperagakan bagaimana perangkat ini dibanting, diinjak sampai disiram air. Ajaib, perangkat ini tetap menyala dan bekerja dengan baik.
Banderol perangkat lini Toughbook memang tidak murah. Berada di kisaran USD 1.000 - USD 7.000, wajar produk Panasonic ini bukan untuk konsumen retail, melainkan menyasar segmen korporat.
"Di Indonesia kita baru mengedukasi pasar korporat. Konsumen kami umumnya adalah kalangan pemerintah, konstruksi, perusahaan healthcare dan lain-lain. Soal harga, dengan semua teknologi ini memang lebih mahal, tapi masa pakainya bisa 3-4 kali lebih bermanfaat sesuai kebutuhan pekerja," ujar Satoshi.
Bibang S. Teng, Managing Director Visi Mandiri Baru yang ditunjuk sebagai distributor perangkat Toughbook di Indonesia menambahkan, untuk mengedukasi pasar nantinya mereka akan mendatangi sejumlah industri dan lembaga memperkenalkan fitur-fitur Toughbook.
"Kita akan datang ke industri, government, perusahaan konstruksi telekomunikasi, healthcare dan lain-lain. Kita bisa adakan seminar, workshop atau event untuk memperlihatkan perangkat semacam ini cocok untuk worker mereka yang ada di lapangan," tandasnya, berpromosi.
Wow! Komputer Antik Apple Terjual Rp 6,5 Miliar
Jakarta - Komputer Apple 1 memang punya nilai sejarah
tinggi, di mana perangkat ini adalah yang pertama dibuat oleh duet Steve
Jobs dan Steve Wozniak. Seseorang pun rela menebusnya seharga USD 671
ribu sehingga mencetak rekor penjualan.
Komputer Apple 1 yang terjual dalam lelang di Jerman ini masih hidup dan bekerja dengan baik. Sang pembeli tidak disebut identitasnya, hanya asalnya dari negara Asia.
Menurut Auction Tim Breker selaku penyelenggara lelang, total penjualan USD 671 ribu atau di kisaran Rp 6,5 miliar, telah mengalahkan rekor pembelian Apple 1 sebelumnya yang senilai USD 640 ribu.
Apple 1 yang dilelang ini memang istimewa karena masih bekerja meskipun sudah berusia sekitar 40 tahun. Pakar menyatakan, hanya ada enam Apple 1 yang masih dapat dioperasikan dari sekitar 50 unit yang masih ada saat ini.
Apple 1 yang dirancang oleh Steve Wozniak ini dijual pertama kali pada tahun 1976. Kala itu, harganya USD 666.
Komputer Apple 1 yang terjual dalam lelang di Jerman ini masih hidup dan bekerja dengan baik. Sang pembeli tidak disebut identitasnya, hanya asalnya dari negara Asia.
Menurut Auction Tim Breker selaku penyelenggara lelang, total penjualan USD 671 ribu atau di kisaran Rp 6,5 miliar, telah mengalahkan rekor pembelian Apple 1 sebelumnya yang senilai USD 640 ribu.
Apple 1 yang dilelang ini memang istimewa karena masih bekerja meskipun sudah berusia sekitar 40 tahun. Pakar menyatakan, hanya ada enam Apple 1 yang masih dapat dioperasikan dari sekitar 50 unit yang masih ada saat ini.
Apple 1 yang dirancang oleh Steve Wozniak ini dijual pertama kali pada tahun 1976. Kala itu, harganya USD 666.
Acer Aspire P3, Ultrabook Merangkap Tablet Windows
Jakarta - Acer memperkenalkan perangkat terbarunya yang
berbasis Windows 8. Keunikan produk bernama Acer Aspire P3 ini adalah
memadukan fungsionalitas ultrabook dengan tablet PC.
Ya, desain Aspire P3 memang unik meski tak jauh berbeda dengan konsep perangkat PC hybrid yang marak belakangan ini. Aspire P3 memiliki semacam cangkang keyboard sehingga bisa didirikan dengan penahan di belakangnya dan berfungsi sebagai ultrabook.
Kemudian, perangkat ini dapat dilepas dari cangkangnya tersebut dan sepenuhnya menjadi tablet layar sentuh. Acer mengklaim desainnya yang unik memudahkan pengguna untuk bekerja sekaligus sebagai media hiburan.
"Perangkat ini punya tiga keunggulan. Pertama desainnya hybrid, performanya powerful dan juga menjadi media hiburan. Jika dilihat dari desainnya, terlipat seperti buku. Namun mudah dibuka menjadi laptop," tukas Rico Gunawan, Product Management Acer.
Rico mengklaim Aspire P3 punya performa powerful karena dibekali prosesor Intel i3 atau i5. Kemudian media penyimpanannya memakai SSD serta layarnya berteknologi IPS (in panel switching).
Spesifikasi lainnya seperti kamera belakang 5 megapixel, kamera depan untuk merekam video full HD, grafis IntelHD Grahics 400, Wi Fi, kompatibel dengan dongle 3G, micro HDMI, audio Dolby Home Theater, dan baterai 5280.
Aspire P3 dijual Rp 7,5 juta untuk versi Intel Core i3 dan Rp 8,5 juta dengan Intel Core i5, setelah cash back Rp 1 juta.
Ya, desain Aspire P3 memang unik meski tak jauh berbeda dengan konsep perangkat PC hybrid yang marak belakangan ini. Aspire P3 memiliki semacam cangkang keyboard sehingga bisa didirikan dengan penahan di belakangnya dan berfungsi sebagai ultrabook.
Kemudian, perangkat ini dapat dilepas dari cangkangnya tersebut dan sepenuhnya menjadi tablet layar sentuh. Acer mengklaim desainnya yang unik memudahkan pengguna untuk bekerja sekaligus sebagai media hiburan.
"Perangkat ini punya tiga keunggulan. Pertama desainnya hybrid, performanya powerful dan juga menjadi media hiburan. Jika dilihat dari desainnya, terlipat seperti buku. Namun mudah dibuka menjadi laptop," tukas Rico Gunawan, Product Management Acer.
Rico mengklaim Aspire P3 punya performa powerful karena dibekali prosesor Intel i3 atau i5. Kemudian media penyimpanannya memakai SSD serta layarnya berteknologi IPS (in panel switching).
Spesifikasi lainnya seperti kamera belakang 5 megapixel, kamera depan untuk merekam video full HD, grafis IntelHD Grahics 400, Wi Fi, kompatibel dengan dongle 3G, micro HDMI, audio Dolby Home Theater, dan baterai 5280.
Aspire P3 dijual Rp 7,5 juta untuk versi Intel Core i3 dan Rp 8,5 juta dengan Intel Core i5, setelah cash back Rp 1 juta.
Kata Siapa Windows 8 Susah Digunakan?
Jakarta - Sistem operasi Windows 8 memang cukup jauh
berbeda dari generasi sebelumnya seperti Windows 7. Sehingga dikabarkan
cukup banyak pengguna yang kebingungan menggunakannya.
Misalnya tidak terdapat tombol start. Dan penampilan interface yang benar-benar baru di mode layar sentuh maupun mode desktop.
Namun anggapan itu ditepis oleh Jason Lim, Presiden Direktur Acer Indonesia. Ia mengklaim bahwa Windows 8 mudah digunakan, bahkan bagi pengguna pemula.
"Setengah jam pakai juga langsung bisa. Windows 8 sesungguhnya mudah dipakai. Sama seperti memakai BlackBerry atau Android, sama saja," tukas Jason dalam peluncuran ultrabook Acer Aspire P3.
Ia menambahkan bahwa dari survei Acer, banyak pengguna notebook saat ini menginginkan fungsionalitas touch and type. Perangkat yang bisa dikendalikan melalui layar sentuh maupun keyboard konvensional.
"Kami juga fokus membuat perangkat komputer touch and type. Dan saya pikir Windows 8 akan berkontribusi besar karena dirancang juga untuk layar sentuh," pungkas Jason.
Misalnya tidak terdapat tombol start. Dan penampilan interface yang benar-benar baru di mode layar sentuh maupun mode desktop.
Namun anggapan itu ditepis oleh Jason Lim, Presiden Direktur Acer Indonesia. Ia mengklaim bahwa Windows 8 mudah digunakan, bahkan bagi pengguna pemula.
"Setengah jam pakai juga langsung bisa. Windows 8 sesungguhnya mudah dipakai. Sama seperti memakai BlackBerry atau Android, sama saja," tukas Jason dalam peluncuran ultrabook Acer Aspire P3.
Ia menambahkan bahwa dari survei Acer, banyak pengguna notebook saat ini menginginkan fungsionalitas touch and type. Perangkat yang bisa dikendalikan melalui layar sentuh maupun keyboard konvensional.
"Kami juga fokus membuat perangkat komputer touch and type. Dan saya pikir Windows 8 akan berkontribusi besar karena dirancang juga untuk layar sentuh," pungkas Jason.
Trio ThinkPad Lenovo Tegaskan PC Belum Mati
Jakarta - "PC is not dead. Now we're talking about PC+ era,"
demikian kalimat yang dilontarkan Rajesh Thadani, Country General
Manager Lenovo Indonesia dalam acara peluncuran produk terbarunya di
Jakarta.
Meneruskan kalimat tadi, Rajesh mengatakan bahwa Lenovo akan terus berinovasi dengan PC. Membuktikan hal tersebut, vendor asal China ini pun merilis tiga produk baru, yakni ThinkPad X1 Carbon Touch, ThinkPad Tablet 2 dan ThinkPad Helix yang dioptimalkan untuk Windows 8 layar sentuh.
ThinkPad X1 Carbon Touch
Memakai konstruksi carbon fiber, produk ini diklaim sangat ringan dengan ukuran layar 14 inci dan berat 1,5 kg.
Terdapat fitur-fitur unik yang disematkan di produk berbanderol mulai Rp 20 juta ini. Salah satunya adalah Rapid Charge. Diklaim oleh Azis Wonosari selaku Technical Manager Lenovo Indonesia, dengan fitur ini pengguna bisa mendapatkan daya 80% hanya dengan melakukan charging selama 35 menit.
Lantas ada juga Touch Pad yang sudah mendukung gesture control Windows 8, serta Fingerprint Reader. Di Indonesia, produk ini ditawarkan dengan opsi prosesor Intel i5 dan i7.
Dikhususkan untuk yang sering mobile, piranti ini sangat mendukung dengan bodi langsingnya.
"Kita mengikuti standar Intel untuk ultrabook, nggak boleh lebih dari 21mm," tukas Azis. Adapun ThinkPad X1 Carbon Touch hanya memiliki ketebalan 20,8mm.
ThinkPad Tablet 2
"Tablet paling ringan untuk Windows 8," klaim Lenovo seperti disampaikan Azis. Dengan bobot sekitar 600 gram, agaknya klaim tersebut memang layak dilontarkan. Produk dengan label harga mulai Rp 7,3 juta ini ditujukan bagi business user dan education.
ThinkPad Helix
Helix mengusung konsep yang menarik dimana piranti ini memadukan desain sebuah laptop dan komputer tablet. Ia memiliki layar 11,6 inchnya dengan resolusi full HD dan teknologi IPS.
"Bagian layarnya bisa dikonversi menjadi tablet," terang Azis, di Shangri-la Hotel, Jakarta Pusat, Kamis (30/5/2013).
Selain bisa dilepas dan dipisahkan dari keyboardnya, bagian layar ini juga bisa ditekuk ke bawah dengan posisi tetap berada di port.
ThinkPad Helix memakai Intel Core Generasi ke-3 full function tertipis dengan vPro. Tablet ini dilepas di harga mulai Rp 19,5 juta. Ketiga produk di atas telah dibekali sistem operasi Windows 8.
Meneruskan kalimat tadi, Rajesh mengatakan bahwa Lenovo akan terus berinovasi dengan PC. Membuktikan hal tersebut, vendor asal China ini pun merilis tiga produk baru, yakni ThinkPad X1 Carbon Touch, ThinkPad Tablet 2 dan ThinkPad Helix yang dioptimalkan untuk Windows 8 layar sentuh.
ThinkPad X1 Carbon Touch
Memakai konstruksi carbon fiber, produk ini diklaim sangat ringan dengan ukuran layar 14 inci dan berat 1,5 kg.
Terdapat fitur-fitur unik yang disematkan di produk berbanderol mulai Rp 20 juta ini. Salah satunya adalah Rapid Charge. Diklaim oleh Azis Wonosari selaku Technical Manager Lenovo Indonesia, dengan fitur ini pengguna bisa mendapatkan daya 80% hanya dengan melakukan charging selama 35 menit.
Lantas ada juga Touch Pad yang sudah mendukung gesture control Windows 8, serta Fingerprint Reader. Di Indonesia, produk ini ditawarkan dengan opsi prosesor Intel i5 dan i7.
Dikhususkan untuk yang sering mobile, piranti ini sangat mendukung dengan bodi langsingnya.
"Kita mengikuti standar Intel untuk ultrabook, nggak boleh lebih dari 21mm," tukas Azis. Adapun ThinkPad X1 Carbon Touch hanya memiliki ketebalan 20,8mm.
ThinkPad Tablet 2
"Tablet paling ringan untuk Windows 8," klaim Lenovo seperti disampaikan Azis. Dengan bobot sekitar 600 gram, agaknya klaim tersebut memang layak dilontarkan. Produk dengan label harga mulai Rp 7,3 juta ini ditujukan bagi business user dan education.
ThinkPad Helix
Helix mengusung konsep yang menarik dimana piranti ini memadukan desain sebuah laptop dan komputer tablet. Ia memiliki layar 11,6 inchnya dengan resolusi full HD dan teknologi IPS.
"Bagian layarnya bisa dikonversi menjadi tablet," terang Azis, di Shangri-la Hotel, Jakarta Pusat, Kamis (30/5/2013).
Selain bisa dilepas dan dipisahkan dari keyboardnya, bagian layar ini juga bisa ditekuk ke bawah dengan posisi tetap berada di port.
ThinkPad Helix memakai Intel Core Generasi ke-3 full function tertipis dengan vPro. Tablet ini dilepas di harga mulai Rp 19,5 juta. Ketiga produk di atas telah dibekali sistem operasi Windows 8.
Kabel Lightning Palsu Ditolak iOS 7
Jakarta - Pengguna iDevice yang sudah menjajal iOS 7
versi beta pasti paham bahwa sistem operasi baru ini akan
mengidentifikasi Lightning yang tidak asli alias palsu dengan sebuah
peringatan.
Nantinya Lightning yang dicolok ke iPhone atau iPad generasi terbaru akan mendapatkan sebuah notifikasi mengenai peringatan bahwa perangkat yang digunakan adalah palsu.
Tentu saja ini sedikit ganjalan bagi yang sudah memiliki Lightining palsu karena alasan harga yang jauh lebih murah. Ini artinya, saat update iOS 7 nanti mungkin Lightining tidak berfungsi lagi.
Nah, sadar akan bahaya tersebut, produsen asal China yang memasok Lightning palsu ke pasaran berusaha membongkar masalah tersebut.
Hasilnya tak terlalu mengecewakan, karena dikabarkan iPhone5mod -- sang produsen Lightining palsu -- berhasil membongkar kuncian di iOS 7 tersebut. Demikian yang dikutip detikINET dari Apple Insider, Rabu (26/6/2013).
Pihak iPhone5mod mengatakan bahwa crack mengubah dari sisi hardware, jadi Apple tetap tidak akan bisa mengenali aksesorisnya tersebut sebagai sesuatu yang palsu dari segi software. Kecuali, Apple mengubah Lightining miliknya tersebut.
Sebelumnya, iPhone5mod pernah mendapatkan perhatian dari Apple terkait aksesoris agar membuat iPhone 4S terlihat seperti iPhone 5. Akibatnya, Apple pernah mengirimkan surat peringatan untuk menghentikan produksi aksesoris tersebut.
Sebagai produsen Lightining palsu, bahkan iPhone5mod sudah berhasil memasoknya ke toko-toko bahkan sebelum iPhone 5 benar-benar diumumkan secara resmi.
Nantinya Lightning yang dicolok ke iPhone atau iPad generasi terbaru akan mendapatkan sebuah notifikasi mengenai peringatan bahwa perangkat yang digunakan adalah palsu.
Tentu saja ini sedikit ganjalan bagi yang sudah memiliki Lightining palsu karena alasan harga yang jauh lebih murah. Ini artinya, saat update iOS 7 nanti mungkin Lightining tidak berfungsi lagi.
Nah, sadar akan bahaya tersebut, produsen asal China yang memasok Lightning palsu ke pasaran berusaha membongkar masalah tersebut.
Hasilnya tak terlalu mengecewakan, karena dikabarkan iPhone5mod -- sang produsen Lightining palsu -- berhasil membongkar kuncian di iOS 7 tersebut. Demikian yang dikutip detikINET dari Apple Insider, Rabu (26/6/2013).
Pihak iPhone5mod mengatakan bahwa crack mengubah dari sisi hardware, jadi Apple tetap tidak akan bisa mengenali aksesorisnya tersebut sebagai sesuatu yang palsu dari segi software. Kecuali, Apple mengubah Lightining miliknya tersebut.
Sebelumnya, iPhone5mod pernah mendapatkan perhatian dari Apple terkait aksesoris agar membuat iPhone 4S terlihat seperti iPhone 5. Akibatnya, Apple pernah mengirimkan surat peringatan untuk menghentikan produksi aksesoris tersebut.
Sebagai produsen Lightining palsu, bahkan iPhone5mod sudah berhasil memasoknya ke toko-toko bahkan sebelum iPhone 5 benar-benar diumumkan secara resmi.
Razer Blade, Notebook Gaming Paling Langsing
Jakarta - Razer semakin melebarkan sayapnya di kancah
perangkat mobile. Diawali oleh tablet gaming Razer Edge, produsen
aksesoris game tersebut kini meluncurkan notebook gaming.
Tidak hanya memiliki kinerja mumpuni untuk menjalankan game kelas menengah hingga berat, notebook gaming yang diberi nama Blade ini juga memiliki desain langsing. Dengan ketebalan 1,6 cm, Razer mengklaim Blade sebagai notebook gaming tertipis di dunia.
"Kami (Razer) telah merancang dan membuat notebook kinerja tinggi tertipis di dunia. Lebih tipis dari sebuah koin dan lebih kencang dibanding kebanyakan notebook saat ini," klaim Min-Liang Tan, co-founder, CEO dan Creative Director Razer.
Di dalamnya Razer Blade dipersenjatai prosesor Intel Core i generasi keempat 'Haswell' yang dipadukan dengan GeForce GTX 765M sebagai pengolah grafisnya. GeForce GTX 765 diketahui ditenagai oleh 768 CUDA Core, kecepatan clock 850MHz, dan RAM GDDR5 128-bit.
Selain itu seperti dikutip detikINET dari Xbit Labs, Jumat (31/5/2013), Razer Blade yang mengandalkan balutan material alumunium pada bagian bodinya tersebut juga telah dibekali RAM DDR3 1600 sebesar 8 GB, variasi media storage mSATA SSD 128 GB hingga 512 GB, dan layar berukuran 14 inch dengan resolusi maksimal 1600x900 pixel.
Tidak hanya memiliki kinerja mumpuni untuk menjalankan game kelas menengah hingga berat, notebook gaming yang diberi nama Blade ini juga memiliki desain langsing. Dengan ketebalan 1,6 cm, Razer mengklaim Blade sebagai notebook gaming tertipis di dunia.
"Kami (Razer) telah merancang dan membuat notebook kinerja tinggi tertipis di dunia. Lebih tipis dari sebuah koin dan lebih kencang dibanding kebanyakan notebook saat ini," klaim Min-Liang Tan, co-founder, CEO dan Creative Director Razer.
Di dalamnya Razer Blade dipersenjatai prosesor Intel Core i generasi keempat 'Haswell' yang dipadukan dengan GeForce GTX 765M sebagai pengolah grafisnya. GeForce GTX 765 diketahui ditenagai oleh 768 CUDA Core, kecepatan clock 850MHz, dan RAM GDDR5 128-bit.
Selain itu seperti dikutip detikINET dari Xbit Labs, Jumat (31/5/2013), Razer Blade yang mengandalkan balutan material alumunium pada bagian bodinya tersebut juga telah dibekali RAM DDR3 1600 sebesar 8 GB, variasi media storage mSATA SSD 128 GB hingga 512 GB, dan layar berukuran 14 inch dengan resolusi maksimal 1600x900 pixel.
CARA MEMBUAT ANTIVIRUS DENGAN VISUAL BASIC 6
1.Buka
program microsoft visual basic 6.0 -> Standard EXE -> OK maka
akan tampil form baru sesuai dengan gambar di bawah,desain form sesuai
keinginan anda
Beri nama form tersebut : frmUtama
2.Setelah form selesai di rubah namanya tambahkan component Mscomctl.Ocx dengan cara
Klik Project -> Components -> Microsoft Windows Common Controls 6.0 -> lalu klik OK
Contoh seperti gambar di bawah
Klik Project -> Components -> Microsoft Windows Common Controls 6.0 -> lalu klik OK
Contoh seperti gambar di bawah
3.Setelah component sukses di tambahkan langkah selanjutnya adalah menambah Command Button,Textbox,Listview,Picture Box
disini saya menggunakan desain yang sangat sederhana,desain bisa anda rubah sendiri sesuai kreatifitas anda ^^ - Tambahkan Listview kedalam form dan beri nama lvScan
disini saya menggunakan desain yang sangat sederhana,desain bisa anda rubah sendiri sesuai kreatifitas anda ^^ - Tambahkan Listview kedalam form dan beri nama lvScan
yang saya lingkari merah 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 ikuti settingan seperti pada gambar di bawah ini
Klik Listview -> Disebelah kanan bawah ada kotak properties -> Custom
lalu ikuti settingan seperti pada gambar di bawah ini
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
- 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
Code:
Dim Pathnya As String
Pathnya = “”
Pathnya = BrowseFolder(”Pilih folder yang akan di Scan:”, Me)
If Pathnya <> “” Then
txtPath.Text = Pathnya
End If
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
txtPath
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
‘Code:
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
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 antivirus
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
‘Code:
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
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 terdeteksi
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
Me.hide
frmquarantine.show
frmquarantine.show
nah selesai untuk memasukan control ke dalam formnya
contoh form yang telah selesai.
lalu klik kanan pada form masukan kode di bawah ini
/Code:
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
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
lalu di Form_load() masukan kode ini
‘Code:
On Error Resume Next
MkDir “Quarantine”
BuildDatabase
On Error Resume Next
MkDir “Quarantine”
BuildDatabase
Lalu buatlah 1 module dengan nama modAPI
Lalu tambahkan code di bawah ini
‘Code:
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
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 antivirus
Buat 1 module dengan nama modChecksum
masukan code di bawah ini.
‘Code:
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
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
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 antivirusnya
buat lagi 1 buah module dengan nama modQuar
masukan code yang ada di bawah ini
Code:
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
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 karantina
Buat lagi 1 module dengan nama modHeuristic
lalu masukan code di bawah ini
‘Code:
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
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 VBS
Buat 1 module dengan nama modIconCompare
lalu masukan code di bawah ini
‘Code:
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
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 antivirus
Buat 1 module dengan nama modLV
lalu masukan code di bawah ini
‘Code:
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
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
Code di atas berguna untuk dengatur Listview pada saat virus terdeteksi
Buat 1 module dengan nama modPE
lalu masukan code di bawah ini
‘Code:
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
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 HEADER
buat 1 module dengan nama modScanning
lalu tambahkan code di bawah ini
‘Code:
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
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 antivirus
buat 1 module dengan nama modEtc
masukan code di bawah ini
‘Code:
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
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
Code di atas adalah kumpulan fungsi etc untuk scanning,karantina,delete
Ini adalah tampilan antivirus setelah di berikan module
sekarang tinggal cara membuat form quarantinenya,
caranya adalah sebagai berikut pada gambar berikut
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 diatas.
Tambahkan 3 buah Command button dengan nama
-cmdDelete
-cmdRestore
-cmdRestore(1)
Tambahkan code di bawah ini ke dalam Command [ cmdDelete ]
‘Code:
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
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 karantina
Masukan code di bawah ini ke Command [ cmdRestore ]
‘Code:
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
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
Fungsi code di atas berguna untuk me restore file kembali ke asalnya.
lalu pada Form_Load() tambahkan code di bawah ini.
‘Code:
frmUtama.Enabled = False
Dat = AppPath & “Quarantine\HN.dat”
UpdateQ
frmUtama.Enabled = False
Dat = AppPath & “Quarantine\HN.dat”
UpdateQ
Masukan code di bawah ini ke dalam frmQuarantine yang telah anda buat tadi.
‘Code:
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
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
Berfungsi untuk memanggil data yang ada di folder karantina.
Hanya
itu ilmu yang bisa saya bagikan. sekarang kita bukan hanya sebagai
pemakai atau user sekrang kita sudah bisa mmembuat antivirus.
dan ini adalah Screenshot antivirus yang kita buat tadi saat melakukan scanning.
Note : Jika anda membaca dan mencoba dengan teliti dan seksama anda pasti berhasil.
Orang yang berhasil adalah orang yang banyak mecoba.
Untuk
masalah source code anda bisa meminta kepada saya tapi dengan satu
syarat, yaitu anda harus menyertakan bukti bahwa anda telah mencoba
entah itu dalam bentuk screenshot atau yang lainnya.
Untuk yang belum punya Visual Basic 6.0 bisa downloaddisini
Sumber : Bulian
Seagate Geber Hardisk NAS Berkapasitas 4 TB
Jakarta - Seagate meluncurkan produk Seagate NAS HDD
terbarunya. HDD terbaru ini diklaim sebagai terobosan untuk sistem
network attached storage (NAS) yang bekerja sepanjang waktu.
Perangkat ini hadir dengan beragam pilihan kapasitas, termasuk 4 TB, yang merupakan kapasitas paling besar yang dimiliki hard disk drive (HDD) NAS yang ada saat ini.
Scott Horn, Wakil Presiden Seagate bidang marketing mengatakan, sekitar 50% NAS yang dipasarkan saat ini dijual tanpa dilengkapi disk. Ini mempersulit pengguna dalam mengenali serta memilih perangkat penyimpanan yang paling tepat untuk sistem yang mereka miliki.
"Dengan dikembangkannya NAS HDD drive,kami memastikan bahwa pengguna tidak perlu lagi menebak-nebak drive apa yang paling cocok untuk sistemnya. Pemasangan pun akan menjadi lebih mudah," klaimnya, dalam keterangan tertulis, Rabu (26/6/2013).
Kapasitas penyimpanan drive yang mencapai 4 TB memungkinkan sistem NAS, khususnya yang dimanfaatkan dalam usaha kecil atau menengah (SMB), untuk mampu menampung hingga 20 TB data dalam jajaran NAS dengan lima bay.
Ditambah dengan peningkatan kapasitas lebih dari 30% dibandingkan dengan produk sejenis, drive NAS HDD 4 TB memberikan kapasitas terbesar yang ada di kelasnya saat ini.
Pilihan kapasitas 4 TB yang disediakan khusus untuk solusi NAS ini diklaim dapat menghemat biaya, karena mampu menampung hingga lebih dari 819.000 foto digital, 1 juta lagu atau 500 jam konten video dengan resolusi high definition (HD) -- jauh melampaui kapasitas yang dibutuhkan sebuah rumah tangga pada umumnya.
Memberikan kinerja hingga 10% lebih tinggi jika dibandingkan dengan aplikasi NAS 24x7 lainnya, Seagate NAS HDD mampu bekerja dalam aplikasi yang selalu menyala serta dapat mendukung lebih dari satu streaming video dengan resolusi HD serta profil pengguna sekaligus.
Perangkat ini juga bekerja nyaris tanpa suara yang bisa ditangkap telinga manusia, menghasilkan hanya 1,9 bels, sehingga ideal bagi lingkungan rumah maupun usaha kecil dan menengah.
Perangkat ini hadir dengan beragam pilihan kapasitas, termasuk 4 TB, yang merupakan kapasitas paling besar yang dimiliki hard disk drive (HDD) NAS yang ada saat ini.
Scott Horn, Wakil Presiden Seagate bidang marketing mengatakan, sekitar 50% NAS yang dipasarkan saat ini dijual tanpa dilengkapi disk. Ini mempersulit pengguna dalam mengenali serta memilih perangkat penyimpanan yang paling tepat untuk sistem yang mereka miliki.
"Dengan dikembangkannya NAS HDD drive,kami memastikan bahwa pengguna tidak perlu lagi menebak-nebak drive apa yang paling cocok untuk sistemnya. Pemasangan pun akan menjadi lebih mudah," klaimnya, dalam keterangan tertulis, Rabu (26/6/2013).
Kapasitas penyimpanan drive yang mencapai 4 TB memungkinkan sistem NAS, khususnya yang dimanfaatkan dalam usaha kecil atau menengah (SMB), untuk mampu menampung hingga 20 TB data dalam jajaran NAS dengan lima bay.
Ditambah dengan peningkatan kapasitas lebih dari 30% dibandingkan dengan produk sejenis, drive NAS HDD 4 TB memberikan kapasitas terbesar yang ada di kelasnya saat ini.
Pilihan kapasitas 4 TB yang disediakan khusus untuk solusi NAS ini diklaim dapat menghemat biaya, karena mampu menampung hingga lebih dari 819.000 foto digital, 1 juta lagu atau 500 jam konten video dengan resolusi high definition (HD) -- jauh melampaui kapasitas yang dibutuhkan sebuah rumah tangga pada umumnya.
Memberikan kinerja hingga 10% lebih tinggi jika dibandingkan dengan aplikasi NAS 24x7 lainnya, Seagate NAS HDD mampu bekerja dalam aplikasi yang selalu menyala serta dapat mendukung lebih dari satu streaming video dengan resolusi HD serta profil pengguna sekaligus.
Perangkat ini juga bekerja nyaris tanpa suara yang bisa ditangkap telinga manusia, menghasilkan hanya 1,9 bels, sehingga ideal bagi lingkungan rumah maupun usaha kecil dan menengah.
Jumat, 14 Juni 2013
Contoh Paragraf Generalisasi, Analogi, Sebab-Akibat
Contoh Paragraf Generalisasi :
Direktur Utama Perum Bulog Mustafa Abubakar memperkirakan bahwa kekeringan di sejumlah daerah tidak akan mengganggu stok beras nasional. Bahkan, rencana impor 2007 akan diundur untuk 2008 karena produksi beras dalam negeri dalam beberapa bulan mendatang mencukupi kebutuhan nasional. Mustafa menjelaskan bahwa stok beras per Juli 2007 sebanyak 1,63 juta ton cukup untuk kebutuhan nasional selama 7 bulan. Rencana pengadaan 1,8 juta ton tahun ini sudah terpenuhi 1,53 juta ton dari pembelian beras petani. Impor beras 2008 diperkirakan hanya 1,3 juta ton, lebih sedikit 200.000 ton dari rencana impor tahun 2007. Dengan demikian, cadangan beras nasional masih dapat mencukupi kebutuhan pangan masyarakat dan tidak perlu dikhawatirkan sampai akhir 2007.
Contoh Paragraf Analogi 1:
Budi adalah anak yang penakut sikapnya ini membuatnya sering
jadi bahan mainan teman-temannya. Bagai kerbau dicocok hidung ia selalu
mengikuti apa kata orang lain. Sehingga ia tidak dapat berkembang dan selalu
hanya bisa diam sama seperti kerbau yang hanya bisa diam ketika hidungnya
dicocok untuk melakukan apa yang diinginkan tuannnya.
Contoh Paragraf Analogi 2:
Belajar dengan menggunakan buku dan kertas seperti pedang yang berkepala dua . Jika menggunakan kertas terlalu banyak dapat menyebabkan hutan gundul dan pemansan global terjadi. Tapi apabila tidak menggunakan kertas dapat menyebabkan orang tidak dapat belajar dengan baik apalagi yang memiliki tingkat ekonomi terbatas serba salah untuk mengambil keputusan seperti saat menggukan pedang berkepala dua yang bisa menyerang 2 arah yang berlawanan.Contoh Paragraf Kausalitas (Sebab-Akibat):
Mulai tanggal 17 Januari 2002, harga berbagai jenis minyak bumi dalam negeri naik. Minyak tanah, premium, solar, dan lain-lain dinaikkan harganya. Hal ini karena Pemerintah ingin mengurangi subsidi dengan harapan supaya ekonomi Indonesia kembali berlangsung normal. Karena harga bahan bakar naik, sudah barang tentu biaya angkutan pun akan naik pula. Jika biaya angkutan naik, harga barang-barang pasti akan ikut naik karena biaya tambahan untuk transportasi harus diperhitungkan. Naiknya harga barang-barang akan dirasakan berat oleh rakyat. Oleh karena itu, kenaikan harga barang harus diimbangi dengan usaha menaikkan pendapatan masyarakat.
Sumber :
http://hanggaryudha.wordpress.com/2013/01/02/contoh-paragraf-generalisasi-analogi-dan-kausalitas/
Langganan:
Postingan (Atom)