Download

11/30/2010

Cara Membuat Expired Date Untuk Aplikasi Di Delphi 7


Selamat siang agan-agan.Pada tutorial kali ini saya akan membahas mengenai Cara Membuat Expired Date Untuk Aplikasi Di Delphi 7.Maksudnya udah ngerti kan !? Kalau kita membuat aplikasi yang bertujuan untuk komersil dan di gunakan secara massal , maka kita harus membuat masa trial pada aplikasi kita.Nantinya bila sudah expired , maka user akan diminta untuk registrasi untuk menggunakannya lagi.Bungung !? Sama.Maka dari itu , lebih baik kita contoh kan saja dengan praktek.

Cara kerjanya seperti ini , bila user menjalankan aplikasi sebelum masa expired , maka akan tampil pesan bahwa masa expired aplikasi tinggal beberapa hari lagi.Namun bila user menjalankan aplikasi setelah lewat masa expired , maka aplikasi tidak akan bisa di jalankan.Lalu tunggu apalagi !? Silahkan buka borland Delphi 7 anda.Kita akan membuat procedure dengan nama expired.Ketikan kode berikut setelah {$R *.dfm}


  1. procedure expired;  
  2. var tahun , bulan , tanggal  , sisa:Integer;  
  3.     tempo : TDate;  
  4. begin  
  5.   tahun:=2011;  // tahun expired  
  6.   bulan:=07;    //bulan expired  
  7.   tanggal:=30;  //tanggal expired  
  8.   //membandingkan tanggal hari ini dengan tanggal expired  
  9.    if (Date >= EncodeDate(tahun, bulan, tanggal)) then  
  10.       begin  
  11.         ShowMessage('Masa trial software anda telah habis , silahkan registrasi');  
  12.         Application.Terminate;  
  13.       end  
  14.    else  
  15.     begin  
  16.     //mencari selisih tanggal antara tanggal expired , dan tanggal hari ini  
  17.       tempo:=EncodeDate(tahun , bulan , tanggal);  
  18.       sisa:=trunc(tempo-date);  
  19.       ShowMessage('Masa trial anda tersisa ' + IntToStr(sisa) +' Hari lagi' );  
  20.     end;  
  21. end;  

Untuk tanggal expired , anda bisa memodifikasinya dengan mencari tau tanggal kapan pertama kali aplikasi anda di jalankan dengan memanfaatkan fungsi dari registry.Anda bisa melihatnya DISINI.
Okey , setelah procedure expired dibuat maka anda tinggal memanggilnya pada form1 event on activate.Ketikan kodenya seperti di bawah ini.


  1. procedure TForm1.FormActivate(Sender: TObject);  
  2. begin  
  3.   expired;  
  4. end;  

Coba jalankan aplikasi anda.Atur-atur kembali tanggal expired yang di tulis tadi untuk mengecek apakah berfungsi dengan benar atau tidak.Sekian postingan kali ini semoga bermanfaat.

11/29/2010

Cara Membersihkan TEdit Secara Cepat Di Delphi 7



Selamat siang agan-agan.Pada postingan kali ini saya akan membahas mengenai Cara Membersihkan TEdit Secara Cepat Di Delphi 7.Maksudnya !? Biasanya ketika kita sudah selesai menginputkan data kedalam database , data yang di inputkan melalui komponen TEdit tentu harus di bersihkan untuk kemudian digunakan lagi dalam proses penginputan berikutnya.Bila ternyata jumlah komponen TEditnya sangat banyak , tentu akan merepotkan bila harus membersihkannya satu-satu.Mari kita contohkan dengan membuat program.Yang satu menggunakan cara lama , dan satu lagi menggunakan cara cepat.

1.Cara Lama
Buka borland Delphi 7 anda lalu tambahkan 10 buah component TEdit dan 1 buah component button.Buat sebuah procedure dengan nama bersihLama.Ketikan kode berikut setelah {$R *.dfm}


  1. procedure bersihLama;  
  2. begin  
  3.   with form1 do  
  4.     begin  
  5.       Edit1.Clear;  
  6.       Edit2.Clear;  
  7.       Edit3.Clear;  
  8.       Edit4.Clear;  
  9.       Edit5.Clear;  
  10.       Edit6.Clear;  
  11.       Edit7.Clear;  
  12.       Edit8.Clear;  
  13.       Edit9.Clear;  
  14.       Edit10.Clear;  
  15.   
  16.       Edit1.Enabled:=false;  
  17.       Edit2.Enabled:=false;  
  18.       Edit3.Enabled:=false;  
  19.       Edit4.Enabled:=false;  
  20.       Edit5.Enabled:=false;  
  21.       Edit6.Enabled:=false;  
  22.       Edit7.Enabled:=false;  
  23.       Edit8.Enabled:=false;  
  24.       Edit9.Enabled:=false;  
  25.       Edit10.Enabled:=false;  
  26.     end;  
  27. end;  

Lalu double-klik button1 dan ketikan kode berikut.


  1. procedure TForm1.Button1Click(Sender: TObject);  
  2. begin  
  3.   bersihLama;  
  4. end;  

Sekarang jalankan program anda , lalu klik button1.Semua component TEdit yang ada langsung bersih dan tidak bisa di edit.Cara seperti itu memang tidaklah salah.Namun tentu akan memakan banyak waktu bila ternyata kita harus melakukan hal yang sama (mengetik semua nama component TEdit) secara berulang-ulang.Untuk itu , mari kita bandingkan dengan cara cepat.

2.Cara Cepat
Buat sebuah program baru di Delphi 7 anda.Tambahkan 10 buah component TEdit dan 1 buah component button.Buat sebuah procedure dengan nama bersihCepat.Ketikan kode berikut setelah {$R *.dfm}


  1. procedure bersihCepat;  
  2.  var i : Integer;  
  3. begin  
  4.   with Form1 do  
  5.     begin  
  6.       for i := 0 to ComponentCount-1 do  //menghitung jumlah component  
  7.       if (Components[i] is TEdit) then   //menyortir hanya component TEdit  
  8.       begin  
  9.         (Components[i] as TEdit).Text := '';  //mebersihkan TEdit  
  10.         (Components[i] as TEdit).Enabled:=false//disabled TEdit  
  11.       end;  
  12.   end;  
  13. end;  

Lalu double-klik button1 dan ketikan kode berikut.


  1. procedure TForm1.Button1Click(Sender: TObject);  
  2. begin  
  3.   bersihCepat;  
  4. end;  

Jalankan program anda lalu klik pada button1.Apa yang terjadi !? Tentu hal sama ketika kita menggunakan caraLama.Namun kali ini , kode yang di gunakan jauh lebih sedikit tentunya.Lebih praktis , karena bila nantinya kita menambahkan component TEdit lagi , kita tidak perlu merubah kodenya sedikitpun.Okey , sekian untuk postingan kali ini , semoga bermanfat.

11/28/2010

Cara Mengecek Primary Key Pada Saat Input Di Delphi 7


Selamat malam agan-agan , postingan kali ini saya akan membahas mengenai Cara Mengecek Primary Key Pada Saat Input Di Delphi 7.Maksudnya !? Misalnya anda membuat aplikasi input barang.Setiap barang memiliki nama dan ID-nya masing-masing.ID atau primary key ini haruslah unik.Artinya tidak boleh lebih dari satu.Apa yang terjadi bila primary key lebih deri satu !? Ya error lah programnya.Untuk mencegah hal tersebut terjadi , mari kita bahas bersama-sama.Untuk postingan kali ini , kita tidak akan membuatnya dari nol , namun sedikit memodifikasi kode yang saya tulis pada postingan Tutorial Aplikasi Database Part-2.Cara pencegahan dopost primary key bukan hanya seperti ini , namun bila anda silahkan ikuti cara saya.
Cari kode seperti di bawah ini pada postingan Tutorial Aplikasi Database Part-2.


  1. Procedure TFinputBarang.edKodeBarangKeyPress(Sender: TObject);  
  2. Begin  
  3.  If key=#13 then  //fungsi bila tombol enter ditekan  
  4.   Begin  
  5.    If edKodeBarang.text <> '' then  
  6.     Begin  
  7.      edNama.setFocus;  
  8.     End;  
  9.   End;  
  10. End;  

Lalu modifikasi kode tersebut menjadi seperti ini.


  1. Procedure TFinputBarang.edKodeBarangKeyPress(Sender: TObject);  
  2. Begin  
  3. with DM.TBarang do  
  4. begin  
  5.  If key=#13 then  //fungsi bila tombol enter ditekan  
  6.   Begin  
  7.    If edKodeBarang.text <> '' then  
  8.     Begin  
  9.   //membandingkan edKodeBarang dengan data kode barang di database  
  10.   //kalo ada , langsung muncul pesan seperti kode di bawah  
  11.   if locate('kdBarang',edKodeBarang.text,[locaseinsensitive]) then  
  12.    begin  
  13.     showmessage('Maaf , kode barang sudah terdaftar dalam database');  
  14.     edkodeBarang.clear;  
  15.    end  
  16.   else  
  17.    begin  
  18.     edNama.setFocus;  
  19.    end;  
  20.     End;  
  21.   End;  
  22. End;  
  23. end;  

Intinya , kita hanya membandingkan saja edKodeBarang dengan data primary key pada database.JANGAN LUPA !! Tambahkan DB pada klausa uses.Kalau tidak maka program akan error.Karena penggunaan function [locaseinsensitive] tanpa menyertakan DB.Okey , sekian tutorial kali ini semoga bermanfaat.

11/27/2010

Cara Membuat Aplikasi Pemesanan Kantin Di Delphi 7


Selamat siang agan-agan.Postingan kali ini akan membahas mengenai Cara Membuat Aplikasi Pemesanan Kantin Di Delphi 7.Terdengar menarik !? Bagus kalau begitu.Aplikasi yang akan di buat , ialah yang di gunakan oleh kasir ketika ada pemesanan oleh pembeli.Aplikasi yang dibuat masih sederhana , namun yang perlu diperhatikan ialah logika atau alur dari aplikasi tersebut.Alurnya seperti ini : Kantin menyediakan beberapa jenis makanan dan minuman.Juga pelayanan di antar pemesanan.Ketika ada pembeli dengan memesan makanan serta minuman , kasir menginputkan pilihan tersebut pada
aplikasi.Ketika semua item telah di input , maka akan keluar jumlah / total yang harus di bayar oleh pemesan.Serta kembalian dari uang yang di bayarkan oleh pemesan.Sebaiknya anda bingung , karena saya akan menjelaskannya lewat praktek.Lalu tunggu apa lagi !? Buka borland Delphi 7 anda.Tambahkan komponen berikut kedalam form1


Komponen
Properties
Keterangan
Tlabel (7buah)
Caption : kantin anda , slogan , total bayar , bayar , kembalian , makanan , desert
Lihat gambar
Tbutton(2 buah)
Caption : hitung , baru

TRadioGroup
Caption : minuman ; Items : teh botol , jus jeruk , aqua gelas

TComboBox (2 buah)
Items Makanan : nasi ayam , nasi rawon , mie goreng ; items desert : semangka , pisang , ice cream

Tedit(3 buah)


TCheckBox
Caption : Diantar


Atur posisi komponen tersebut sesuai gambar di bawah ini :

 

Setelah itu !? Mari kita koding !!! Pertama , buat procedure kondisiAwal.Sebagai persiapan ketika aplikasi di jalankan.Ketikan kode berikut setelah {$R *.dfm}.Ketikan , bukan copas :)


  1. procedure kondisiAwal;  
  2. begin  
  3.   with form1 do  
  4.     begin  
  5.       Edit1.Clear;  
  6.       Edit2.Clear;  
  7.       Edit3.Clear;  
  8.       CheckBox1.Checked:=false;  
  9.     end;  
  10. end;  

Lalu pada form1 event onShow , panggil procedure tadi dengan cara sebagai berikut :


  1. procedure TForm1.FormShow(Sender: TObject);  
  2. begin  
  3.   kondisiAwal;  
  4. end;  

Selanjutnya , kita akan memberi kode untuk button hitung.Kondisi ketika kasir menekan tombol hitung.Double-klik button hitung dan ketikan kode berikut :


  1. procedure TForm1.Button1Click(Sender: TObject);  
  2. var harga_minum , harga_makan , harga_dessert , total : real; //variable tambahan  
  3. begin  
  4.   if RadioGroup1.ItemIndex = 0 then  
  5.     begin  
  6.       harga_minum := 2000;  
  7.     end  
  8.   else  
  9.     if RadioGroup1.ItemIndex = 1 then   //pilihan menu minuman  
  10.       begin  
  11.         harga_minum := 3000;  
  12.       end  
  13.     else  
  14.       begin  
  15.         harga_minum := 1000;  
  16.       end;  
  17.   
  18.   if ComboBox1.Text = 'Nasi Ayam' then  
  19.     begin  
  20.       harga_makan := 5000;  
  21.     end  
  22.   else  
  23.     if ComboBox1.Text = 'Nasi Rawon' then  //pilihan menu makanan  
  24.       begin  
  25.         harga_makan := 6000;  
  26.       end  
  27.     else  
  28.       begin  
  29.         harga_makan := 3000;  
  30.       end;  
  31.   
  32.   if ComboBox2.Text = 'Semangka' then  
  33.     begin  
  34.       harga_dessert := 1500;  
  35.     end  
  36.   else  
  37.     if ComboBox2.Text = 'Pisang' then  //pilihan menu dessert  
  38.       begin  
  39.         harga_dessert := 1000;  
  40.       end  
  41.   else  
  42.     begin  
  43.       harga_dessert := 3000;  
  44.     end;  
  45.   
  46.   total := harga_minum + harga_makan + harga_dessert;  
  47.   if CheckBox1.Checked = true then  
  48.     begin  
  49.       total := total + 500;      //jika di antar , ada biaya tambahan  
  50.     end;  
  51.     Edit1.Text := FloatToStr(total);  //menghitung total pemesanan  
  52. end;  

Kode tersebut berfungsi untuk mengolah data pemesanan sehingga nantinya akan di tampilkan jumlah total dari besarnya uang yang harus di bayarkan oleh pembeli sesuai dengan item pemesanan.

Selanjutnya pada edit2 event onKeyPress ketikan kode berikut :

  1. procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char);  
  2. var total , bayar , kembalian : real; //variable tambahan  
  3. begin  
  4.   if key = #13 then //bila tombol enter di tekan  
  5.     begin  
  6.       total := StrToFloat(Edit1.Text);  
  7.       bayar := StrToFloat(Edit2.Text);  
  8.       kembalian := bayar - total; //menghitung kembalian  
  9.       if bayar < total then   //bila uang kurang  
  10.         ShowMessage('Maaf , uang yang anda bayarkan kurang');  
  11.       Edit3.Text := FloatToStr(kembalian);  //jumlah kembalian  
  12.     end  
  13. end;  
Kode tersebut berfungsi untuk memproses perhitungan dari jumlah yang harus di bayar oleh pemesan dan uang kembalian untuk pemesan.Selanjutnya double-klik button baru dan panggil procedure kondisAwal sehingga kasir bisa menginputkan data baru. 


  1. procedure TForm1.Button2Click(Sender: TObject);  
  2. begin  
  3.   kondisiAwal;  
  4. end;  

Selesai , sekarang jalankan aplikasi tersebut lalu coba untuk melakukan input pada aplikasi.Ternyata tidak sulit bukan !? Bila ternyata anda belum mengerti , coba bandingkan dengan program yang saya buat.Silahkan untuk mendownloadnya DISINI.Okey , sekian untuk postingan kali ini semoga bermanfaat.

11/25/2010

Cara Membuat Aplikasi HJ Split di Delphi 7


Selamat petang agan-agan !! Waktu yang tepat rasanya untuk posting.Setelah sekian abad vacum , akhirnya bisa juga ngasih tutorial mengenai Cara Membuat Aplikasi HJ Split di Delphi 7.Tau kan HJSplit itu apa !?Yuph benar sekali , HJSplit adalah aplikasi untuk memecah file menjadi beberapa file dengan ukuran yang lebih kecil.Fungsinya !? Kalau anda seperti saya (yang suka download film) tentu lebih menyenangkan bila mendownload file dengan ukuran lebih kecil walaupun jumlahnya lebih banyak.Lalu , bisakah kita membuat software tersebut
dengan Delphi 7 !? Tentu saja bisa!Ayo ikutin langkah-langkahnya.
Hal yang krusial dari pembuatan aplikasi ini ialah , proses pemecahan/split dan penyatuan/join.Disini saya akan membuat dua function.Masing-masing untuk proses split dan satu lagi proses join.Ayo simak.Pertama kita akan membuat function splitFile.Yaitu function untuk memecah file.Ketikan kode berikut setelah {$R *.dfm}


  1. //function split  
  2. function SplitFile(namaFile : TFileName; ukuranFile : Integer; ProgressBar : TsGauge) : Boolean; //anda bisa mengganti TsGauge dengan TProgressBar  
  3. var  
  4.   i : Word;  
  5.   fs, sStream: TFileStream;   //variabel yang dibutuhkan  
  6.   namaFileSplit,ext: String;  
  7. begin  
  8.   ProgressBar.Progress := 0; //mengeset nilai progress bar  0 , bila menggunakan TProgressBar , gunakan properties posistion  
  9.   fs := TFileStream.Create(namaFile, fmOpenRead or fmShareDenyWrite); //membuat fileStream baru lalu di assign ke fs  
  10.   try  
  11.     for i := 1 to Trunc(fs.Size / ukuranFile) + 1 do  
  12.     begin  
  13.       ext:=ExtractFileExt(namaFile); //mendapatkan extensi sebelum di split  
  14.       namaFileSplit := ChangeFileExt(namaFile+ext,'.'+FormatFloat('000', i)); //mengganti extensi terurut angka  
  15.       sStream := TFileStream.Create(namaFileSplit, fmCreate or fmShareExclusive);  
  16.       try  
  17.         if fs.Size - fs.Position < ukuranFile then  
  18.           ukuranFile := fs.Size - fs.Position;  
  19.         sStream.CopyFrom(fs, ukuranFile);  
  20.         ProgressBar.Progress := Round((fs.Position / fs.Size) * 100);//menggerakan progress bar  
  21.       finally  
  22.         sStream.Free; //membebaskan stream  
  23.       end;  
  24.     end;  
  25.   finally  
  26.     fs.Free;//membebaskan fs/stream  
  27.   end;  
  28. end;  

Untuk memanggil function tersebut misal dengan menekan tombol , ketikan kode berikut


  1. procedure TForm1.Button1Click(Sender: TObject);  
  2. begin  
  3.   SplitFile(FileYangAkanDiSplit,UkuranSplitPerFile, ProgressBar1);  
  4. //untuk ukuranSplitPerFile bertipe integer dan ukurannya bytes,jadi bila di isi 1000000 bytes sama dengan 1 MB  
  5. end;  

Selanjutnya kita akan membuat function untuk join file yang sudah di split tadi.Ketikan kode berikut di bawah function splitFile

  1. //function join file  
  2. function joinFiles(namaFile, joinNamaFile : TFileName) : Boolean;  
  3. var  
  4.   i: integer;  
  5.   fs, sStream: TFileStream;  
  6.   filenameOrg: String;  
  7. begin  
  8.   i := 1;  
  9.   fs := TFileStream.Create(joinNamaFile, fmCreate or fmShareExclusive);  
  10.   try  
  11.     while FileExists(namaFile) do  
  12.     begin  
  13.       sStream := TFileStream.Create(namaFile, fmOpenRead or fmShareDenyWrite);  
  14.       try  
  15.         fs.CopyFrom(sStream, 0);  
  16.       finally  
  17.         sStream.Free;  
  18.       end;  
  19.       Inc(i);  
  20.       namaFile := ChangeFileExt(namaFile, '.'+ FormatFloat('000', i));  
  21.     end;  
  22.   finally  
  23.     fs.Free;  
  24.   end;  
  25. end;  

Untuk memanggil fungsi tersebut misal dengan menekan tombol , ketikan kode berikut


  1. procedure TForm1.Button2Click(Sender: TObject);  
  2. begin  
  3. joinFiles(fileYangAkanDiJoin,outputFileYangTelahDiJoin);  
  4. end;  
Yuph , cukup mudah bukan.Atau malah bingung !?lol.Beruntunglah kalau anda bingung , karena saya sudah membuat contoh program tersebut beserta source codenya sehingga mudah digunakan.Dan tentunya membantu  agan-agan untuk memahaminya.Perlu di ketahui , saya membuat program ini dengan tambahan component Alpha Lite.Yaitu sejenis skins serta component pihak ketiga.Jangan khawatir , semua file yang dibutuhkan untuk membuat program tersebut telah saya siapkan dan bisa agan download DISINI.Cukup deh tutorialnya sampai disini.Semoga bermanfaat ya.

11/24/2010

Cara Konversi Karakter TEdit Menjadi UpperCase di Delphi 7


Selamat siang agan-agan.Selalu menyenangkan rasanya bisa terus konsisten untuk posting.Syukur-syukur kalau agan-agan merasa terbantu dengan postingan saya.Pada kesempatan kali ini , saya akan memberikan tutorial mengenai Cara Konversi Karakter TEdit Menjadi UpperCase di Delphi 7.Maksudnya apa bay !?Jadi gini , ketika kita menginputkan karakter pada TEdit terkadang kita menginginkan supaya karakter awal pada tiap kata yang di inputkan tersebut menjadi UpperCase atau huruf besar.Memang tanpa code pun kita bisa membuat karakter awal
tersebut menjadi UpperCase dengan cara menekan tombol shift.Dan sayangnya sebagai manusia kita memiliki keterbatasan dalam menghindari kesalahan.Bisa saja kita lupa atau malas untuk menjadikan tiap karakter awal menjadi UpperCase.Apalagi bila menghadapi kenyataan jumlah TEdit yang bejibun serta data yang melimpah.Secara penggunaanya , sebuah program yang baik haruslah memiliki kemampuan untuk mereduksi kesalahan tersebut.Okay deh , cukup basa-basinya !! hehe .. Tutorial berikut akan membahas agar tangan kiri kita tidak perlu menekan tombol shift ketika kita menginginkan karakter UpperCase di awal kata.Alurnya seperti ini.Kita akan membuat sebuah procedure dengan nama upperCase , dimana procedure tersebut mengolah karakter input pada TEdit dan menjadikannya UpperCase HANYA pada huruf pertama dari sebuah kata dan huruf pertama pada kata setelah spasi.Bingung !? bagus.Misal kita menginputkan kata "saya sangat senang belajar Delphi 7" , maka dengan menggunakan procedure upperCase , kalimat tersebut otomatis di konversi menjadi "Saya Sangat Senang Belajar Delphi 7".Harusnya sampai disini anda telah mengerti tujuan postingan ini.Setelah procedure upperCase di buat , selanjutnya kita cukup memanggilnya pada TEdit event onChange.Jangan lupa tambahkan 1 buah component TEdit atau lebih.Sekarang waktunya coding.Seperti saya bilang , kita akan membuat procedure upperCase.Ketikan kode berikut setelah {$R *.dfm}


  1. //inisialisasi procedure  
  2. procedure upperCase(sender:TObject);  
  3. var  
  4.   sebelumUp : TNotifyEvent; //mengeset variabel yang dibutuhkan  
  5.   dimulaiUp: Integer;  
  6. begin  
  7.   with (Sender as TEdit) do  
  8.     begin  
  9.       sebelumUp := OnChange; //assign var sebelumUp seperti onChange  
  10.       OnChange := nil;  
  11.       dimulaiUp := SelStart;  
  12.       if ((SelStart > 0) and (Text[SelStart - 1] = ' ')) or (SelStart = 1) then  
  13.         begin  
  14.           SelStart := SelStart - 1;  
  15.           SelLength := 1;  
  16.           //menjadikan karakter pertama menjadi upperCase  
  17.           SelText := AnsiUpperCase (SelText);  
  18.         end;  
  19.       OnChange := sebelumUp;  
  20.       SelStart := dimulaiUp;  
  21.     end;  
  22. end;  

Cukup simpel namun paten.Untuk memanggil procedure tersebut , ketikan kode berikut pada TEdit event onChange


  1. procedure TForm1.Edit1Change(Sender: TObject);  
  2. begin  
  3.   upperCase(Sender);  
  4. end;  

Taraaa !!! Beres deh.Bila anda menambahkan lebih dari satu component TEdit , anda cukup memanggil procedure di atas dengan cara yang sama.Coba jalankan program anda lalu inputkan karakter pada TEdit.Harusnya bila berhasil , semua karakter awal pada tiap kata akan berubah menjadi upperCase TANPA harus menekan tombol shift.Selamat memperkaya program anda dengan procedure ini !! Oia , bila anda ingin mendapatkan update postingan blog ini setiap ada postingan baru , cukup tekan tombol like pada facebook fans page , maka otomatis tiap ada potingan baru , wall facebook anda akan di kotori postingan saya :D.Sekian tutorial kali ini semoga bermanfaat.

11/22/2010

Cara Membuat Aplikasi TuneUp Shredder di Delphi 7



Selamat siang agan-agan.Postingan kali ini akan membahas mengenai Cara Membuat Aplikasi TuneUp Shredder di Delphi 7.Jika di komputer anda terinstall aplikasi Tune Up Utilities , tentu sudah tak asing lagi dengan Tune Up Shredder.Yaitu fitur untuk menghapus file secara permanen dan membersihkan alokasi memori di hardisk.Maksudnya !? Bila kita menghapus file secara konvensional dalam hal ini dengan menekan tombol delete , file tersebut maka akan di pindahkan ke recycle bin.Dan benar-benar hilang ketika kita menghapusnya di recycle bin.Benarkah hilang secara permanen !?
Ternyata tidak.Karena dengan bantuan software tertentu file tersebut bisa di kembalikan lagi.Bahaya dong kalau ternyata file tersebut merupakan privasi kita !? Maka dari itu, kali ini kita akan membuat aplikasi mirip TuneUp Shredder menggunakan Delphi 7 tercinta.Lalu tunggu apa lagi !? Segera buka Delphi 7 anda.Tambahkan komponen-komponen berikut ke form1.1 buah TEdit , 1 buah TOpenDialog dan 2 Buah TButton.Susun komponen tersebut sesuai gambar berikut atau tergantung selera anda










Selanjutnya.Tambahkan dua buah procedure pada program tersebut.Ketikan kode berikut setelah {$R *.dfm}


  1. //procedure shredder  
  2. procedure ShredderFile(FileName: string);  
  3. const  
  4.   Buffer       = 1024;  
  5.   Counttowrite = 34;  
  6.   FillBuffer: array[0..5] of Integer = ($00, $FF, $00, $F0, $0F, $00);  
  7. var  
  8.   arr: array[1..Buffer] of Byte;  
  9.   f: file;  
  10.   i, j, n: Integer;  
  11. begin  
  12.   AssignFile(f, FileName);  
  13.   Reset(f, 1);  
  14.   n := FileSize(f);  
  15.   for j := 0 to Counttowrite do  
  16.   begin  
  17.     for i := 1 to n div Buffer do  
  18.     begin  
  19.       BlockWrite(f, FillBuffer[j], Buffer);  
  20.     end;  
  21.   end;  
  22.   CloseFile(f);  
  23.   RenameFile(FileName, ExtractFilepath(FileName) + '$000000.tmp');  
  24.   DeleteFile(ExtractFilepath(FileName) + '$000000.tmp');  
  25. end;  
  26. //akhir procedure shredder  
  27.   
  28. //procedure shredder and delete  
  29. procedure ShredderAndDeleteFile(const FileName: string);  
  30. var  
  31.   newname: string;  
  32. begin  
  33.   
  34.   newname := ExtractFilepath(FileName) + '$000000.tmp';  
  35.   
  36.   if not RenameFile(FileName, newname) then  
  37.     raise  
  38.     Exception.CreateFmt('Kesalahan!', [FileName]);  
  39.   
  40.   ShredderFile(newname);  
  41.   
  42.   DeleteFile(newname);  
  43. end;  

Okay , cukup mudah kan !? Setelah itu double klik TButton browse lalu ketikan kode berikut


  1. procedure TForm1.Button1Click(Sender: TObject);  
  2. begin  
  3.   if OpenDialog1.Execute then  
  4.     begin  
  5.       Edit1.Text:=OpenDialog1.FileName;  
  6.     end;  
  7. end;  

Lalu , double klik TButton Delete dan ketikan kode berikut


  1. procedure TForm1.Button2Click(Sender: TObject);  
  2. begin  
  3.   if Edit1.Text<>'' then  
  4.     begin  
  5.       ShredderAndDeleteFile(Edit1.Text);  
  6.       ShowMessage('File berhasil di hapus');  
  7.       Edit1.Clear;  
  8.     end;  
  9. end;  

Selesai !! Jalankan program anda.Klik TButton Browse lalu cari file yang akan di hapus.Setelah itu , klik TButton Delete.Maka file tersebut total terhapus.Silahkan cek di recycle bin , anda tidak akan menemukannya.Sekian untuk tutorial kali ini , semoga bermanfaat.

11/21/2010

Cara Membuat Aplikasi Penghitung Kapasitas Hard Disk di Delphi 7



Selamat malam agan-agan.Langsung aja deh , tutorial kali ini akan membahas mengenai Cara Membuat Aplikasi Penghitung Kapasitas Hard Disk di Delphi 7.Aplikasi sederhana ini nantinya akan menampilkan sisa space pada hard disk , total space terpakai dan persentase memori yang terpakai dari total keseluruhan partisi.Kalau sudah gak sabar , langsung saja buka borland Delphi 7 anda.Tambahkan 4 buah component TLabel , 1
buah TComboBox , isi itemnya dengan C , D , E , F.Lalu set item indexnya menjadi 0.Dan terakhir sebuah TButton.Susun component tersebut sesuai gambar berikut

Okay , setelah itu double klik TButton lalu ketikan kode berikut


  1. procedure TForm1.Button1Click(Sender: TObject);  
  2. var  
  3.   sisaMemori, kapasitasMemori: Double;  
  4.   sisa: Char;  
  5. begin  
  6.   case ComboBox1.ItemIndex of  
  7.     0:sisa:='C';  
  8.     1:sisa:='D';  
  9.     2:sisa:='E';  
  10.     3:sisa:='F';  
  11.   end;  
  12.   
  13.   sisaMemori := DiskFree(Ord(sisa) - 64);  
  14.   kapasitasMemori := DiskSize(Ord(sisa) - 64);  
  15.   
  16.   label1.Caption := Format('Sisa Memori: %12.0n', [sisaMemori]);  
  17.   Label2.Caption := Format('Kapasitas: %12.0n', [kapasitasMemori]);  
  18.   Label3.Caption := IntToStr(Round((kapasitasMemori - sisaMemori) / kapasitasMemori * 100)) +' Persen Terpakai.';  
  19. end;  

Selesai !! jalankan program anda lalu pilih drive mana yang akan di cek.Setelah itu tekan tombol hitung.Maka akan tampil tuh keterangan mengenai kapasitas dari partisi drive yang agan pilih.Sekian tutorial kali ini semoga bermanfaat.

11/19/2010

Cara Membuat Aplikasi Uninstall di Delphi 7


Selamat siang agan-agan.Siang yang cerah dan tentu saja menyenangkan untuk posting.Pada postingan kali ini , saya akan memberikan tutorial Cara Membuat Aplikasi Uninstall di Delphi 7.Maksudnya apa !? Aplikasi uninstall yang dimaksud ialah sebuah perintah untuk menghapus aplikasi itu sendiri yang berfungsi layaknya uninstall.Sehingga ketika user menjalankan aplikasi tersebut dan mengeksekusi perintah uninstall , maka aplikasi tersebut akan menghapus dirinya sendiri atau harakiri dalam bahasa Jepang (apa deh -,-" ).Kalo ternyata penjelasan saya belibet dan gak masuk akal , mending kita langsung praktek aja deh.Buka borland Delphi 7 anda dan buat aplikasi
baru.Save all project anda terserah dimana saja.Setelah itu , tambahkan sebuah procedure bernama deleteEXE.Ketikan kode berikut setelah {$R *.dfm}


  1. procedure DeleteEXE;  
  2.   
  3.   function GetTmpDir: string;  
  4.   var  
  5.     pc: PChar;  
  6.   begin  
  7.     pc := StrAlloc(MAX_PATH + 1);  
  8.     GetTempPath(MAX_PATH, pc);  
  9.     Result := string(pc);  
  10.     StrDispose(pc);  
  11.   end;  
  12.   
  13.   function GetTmpFileName(ext: string): string;  
  14.   var  
  15.     pc: PChar;  
  16.   begin  
  17.     pc := StrAlloc(MAX_PATH + 1);  
  18.     GetTempFileName(PChar(GetTmpDir), 'uis', 0, pc);  
  19.     Result := string(pc);  
  20.     Result := ChangeFileExt(Result, ext);  
  21.     StrDispose(pc);  
  22.   end;  
  23.   
  24. var  
  25.   batchfile: TStringList;  
  26.   batchname: string;  
  27. begin  
  28.   batchname := GetTmpFileName('.bat');  
  29.   FileSetAttr(ParamStr(0), 0);  
  30.   batchfile := TStringList.Create;  
  31.   with batchfile do  
  32.   begin  
  33.     try  
  34.       Add(':Label1');  
  35.       Add('del "' + ParamStr(0) + '"');  
  36.       Add('if Exist "' + ParamStr(0) + '" goto Label1');  
  37.       Add('rmdir "' + ExtractFilePath(ParamStr(0)) + '"');  
  38.       Add('del ' + batchname);  
  39.       SaveToFile(batchname);  
  40.       ChDir(GetTmpDir);  
  41.       ShowMessage('Uninstalling program...');  
  42.       WinExec(PChar(batchname), SW_HIDE);  
  43.     finally  
  44.       batchfile.Free;  
  45.     end;  
  46.     Halt;  
  47.   end;  
  48. end;  

Lalu tambahkan satu buah komponen TButton kedalam Form1.Double klik Tbutton tersebut lalu ketikan kode berikut untuk memanggil procedure tadi.


  1. procedure TForm1.Button1Click(Sender: TObject);  
  2. begin  
  3.   DeleteEXE;  
  4. end;  

Selesai.Save all project anda dan jalankan.Lihat di folder tempat anda menyimpan project tersebut,nampak project1.exe.Jalankan lagi program anda lalu klik button1.Maka program akan menghapus dirinya sendiri lalu keluar.Silahkan cek di folder tempat penyimpanan project anda , project1.exe sudah tidak ada bukan !? Sekian untuk tutorial kali ini semoga bermanfaat.

11/18/2010

Cara Membuat Aplikasi SWF-EXE Converter di Delphi 7



Selamat siang agan-agan.Siang yang sangat panas disini.Pada postingan kali ini saya akan memberikan tutorial mengenai Cara Membuat Aplikasi SWF-EXE Converter di Delphi 7.Maksudnya !? Seperti kita tau , kalau aplikasi flash itu memiliki ekstensi *.swf.Yang artinya , kita memerlukan AVM (Adobe Virtual Machine) /Flash Player untuk menjalankan aplikasi tersebut.Memang dalam program semisal adobe flash CS 4 , ada fitur untuk mengeksport aplikasi SWF kita menjadi EXE , nah kita akan membuat converter tersebut menggunakan Delphi 7.Lalu tunggu apa lagi !? Buka borland Delphi 7 anda dan bersiap-siap untuk bergembira (apa sih).Yang pertama kali dilakukan , ialah kita akan menuliskan sebuah function yang bertugas untuk mengconvert file SWF menjadi EXE.Dengan 3 buah parameter bernilai string.Parameter pertama , nama file swf , selanjutnya nama output file EXE dan terakhir file flash player.Tambahkan 3 buah variabel pada deklarasi var.Yaitu tujuan ,sumber dan flashPlayer ,ketiganya bertipe String.Ketikan kode berikut setelah {$R *.dfm}


  1. function Swf2Exe(SourceSWF, exeFile, FlashPlayer : string): string;  
  2. var  
  3.   SourceStream , DestinyStream , LinkStream : TFileStream ;  
  4.   flag : Cardinal;  
  5.   SwfFileSize : integer;  
  6. begin  
  7.   result := 'Error';  
  8.   DestinyStream := TFileStream .Create(exeFile, fmCreate);  
  9.   try  
  10.     LinkStream := TFileStream .Create(FlashPlayer , fmOpenRead or fmShareExclusive );  
  11.       try  
  12.         DestinyStream .CopyFrom(LinkStream, 0);  
  13.       finally  
  14.         LinkStream .Free;  
  15.       end;  
  16.       SourceStream := TFileStream .Create(SourceSWF, fmOpenRead or fmShareExclusive );  
  17.       try  
  18.         DestinyStream .CopyFrom(SourceStream , 0);  
  19.         flag := $FA123456;  
  20.         DestinyStream .WriteBuffer (flag, sizeof(integer));  
  21.         SwfFileSize := SourceStream .Size;  
  22.         DestinyStream .WriteBuffer (SwfFileSize , sizeof(integer));  
  23.         result := '';  
  24.         finally  
  25.           SourceStream .Free;  
  26.         end;  
  27.       finally  
  28.         DestinyStream .Free;  
  29.       end;  
  30. end;  

Terlihat , kalau ketiga parameter tersebut sangat krusial.Tambahkan komponen saveDialog , openDialog , 3 buah button.Button1 berfungsi untuk mencari file SWF sekaligus menyimpannya menjadi EXE.Double klik pada button1 dan ketikan kode berikut.


  1. procedure TForm1.Button1Click(Sender: TObject);  
  2. begin  
  3.   if OpenDialog1.Execute then  
  4.     begin  
  5.       sumber:=OpenDialog1.FileName;  
  6.       SaveDialog1.FileName:=ChangeFileExt(sumber,'.exe');  
  7.     end;  
  8.   if SaveDialog1.Execute then  
  9.     begin  
  10.       tujuan:=SaveDialog1.FileName;  
  11.     end;  
  12. end;  

Pada kode tersebut kita mengisi nilai sumber dan tujuan dengan string yang di dapat dari open dan save dialog.Button2 berfungsi untuk mencari flash player.Double klik button2 dan ketikan kode berikut.

  1. procedure TForm1.Button2Click(Sender: TObject);  
  2. begin  
  3.   if OpenDialog1.Execute then  
  4.     begin  
  5.       flashPlayer:=OpenDialog1.FileName;  
  6.     end;  
  7. end;  

Dan yang terakhir yaitu button3 , berfungsi untuk mengeksekusi proses convert.Double klik button3 dan ketikan kode berikut.


  1. procedure TForm1.Button3Click(Sender: TObject);  
  2. begin  
  3.   //pastikan semua variabel terisi  
  4.   if(sumber<>'')and(tujuan<>'')and(flashPlayer<>'') then  
  5.     begin  
  6.       //eksekusi function  
  7.       Swf2Exe(sumber,tujuan,flashPlayer);  
  8.       ShowMessage('Convert Selesai');  
  9.     end  
  10.   else  
  11.     begin  
  12.       //kalau ada parameter yang tidak lengkap  
  13.       ShowMessage('Parameter tidak lengkap');  
  14.     end;  
  15. end;  

Beres deh.Jalankan program anda lalu pilih file swf yang akan di convert.Pilih juga file flash playernya.Lalu silahkan convert !! Kalau ternyata masih bingung , agan-agan bisa download sourcenya berikut file SWF dan flash playernya DISINI.Sekian tutorial kali ini semoga bermanfaat.
Newer Posts Older Posts Home
Aulia DirUt. Powered by Blogger.
 

Blog Archive

Followers

 

Templates by Nano Yulianto | CSS3 by David Walsh | Powered by {N}Code & Blogger