Arsip: buat file bengkak
more 16 years ago
esafm
teman2 semuanya,
aku lg pengen sesuatu file menjadi bengkak, misalnya file gede nya 125MB nah aku inginkan gede filenya itu jadi 700MB atau 600MB tapi file itu tetep jalan.
bagaimana codingnya dan pakai apa ya biar cepet prosesnya dan a[pakah setelah menjadi besar prosesnya akan lama? aku lagi butuh banget nih!
terima kasih sebelumnya
more 16 years ago
pebbie
tergantung dari filenya... kalau dalam format filenya ada mekanisme size checking.. percuma saja..
more 16 years ago
esafm
@pebbie
file yg di bengkakin-nya ga ada checking file size-nya. aku ga ngerti gimana codingnya supaya file jadi gede dan proses pembengkakannya cepat.
terima kasih
more 16 years ago
DelphiExpert
ngomong-ngomong file format/type apa yg anda bicarakan nih?
nambahin data acak biar gendut mah gampang aja, kalo application .exe tinggal elu tulisin dibelakang, PF .exe punya header yg menunjukkan besar ukuran "image" sebenernya, jadi aplikasi tetep bisa jalan sekalipun ente timbun ama sampah 1 / 1024 GB :mrgreen:
const
NewFileSize = 1024 * 700; // 700MB
BufSize = 4096; // 4 MB --- semakin besar semakin cepaaaaat...
var
OrgFileSize, TotalWriten: Cardinal;
F: TFileStream;
Buf: PChar;
WriteDataSize: Integer;
begin
F:= TFileStream.Create('c:\sampledata.extention', fmOpenReadWrite);
try
OrgFileSize:= F.Size;
F.Seek(0, soFromEnd);
GetMem(Buf, BufSize);
try
FillChar(Buf^, BufSize, 32); // contoh: isi data dengan spasi kosong
TotalWriten:= OrgFileSize;
while TotalWriten < NewFileSize do
begin
if TotalWriten + BufSize < NewFileSize then
WriteDataSize:= BufSize
else
WriteDataSize:= NewFileSize - TotalWriten;
F.WriteBuffer(Buf^, WriteDataSize);
Inc(TotalWriten, WriteDataSize);
end;
finally
FreeMem(Buf);
end;
finally
F.Free;
end;
end;
code tidak daku test karena writen on-the-fly, kalo ada kesalahan ketik ya silahkan perbaiki sendiri :mrgreen:
more 16 years ago
cikumiyu
@DelphiExpert
Cuman mau nglurusin sedikit supaya ngga salahnya ngga keterusan.
1024 = 2^10 = 1K. BUKAN 1M.
Jadi,
1024 700 itu sama dengan 700K, BUKAN 700M,
dan
4096 = 2^2 2^10 = 4 * 1024 = 4K. BUKAN 4M.
more 16 years ago
DelphiExpert
whooo iya... dikira2 sendiri aja wis... sory salh keit wakaka... tinggal kalikan 1024 lagi deh... terus terang "kadang" diriku emang suka ngacuhin yg gituan... maap ya ;)
more 16 years ago
Manz
:mrgreen: udah ta' cobain ... good idea, tapi ada masalah, executable tersebut kalo menjadi 700 Megs up, dengan spek Centrino 1.5 Ghz, RAM 1.5 Ghz ... loading nya jadi lamaaaaaaaaaaaaa ... banged... +/- 1 menot baru nonghol tuh program...
Tapi bagus juga, kalo diisikan dibawah 100 megs, biar mereka mabok... nah kalo ini bisa cepret pisan ... biasa kecepatan loading program dengan spek my kompie diatas ... :mrgreen:
Ada pertanyaan satu lagi ... sekarang gimana mengembalikan ke ukuran semula ???? Bantuin donk om DE
more 16 years ago
ImanD
@manz_delphi
itu gampang sekali, dirimu tinggal ,modif yg dari DE itu, dirimu bisa simpan informasi filesize simpan di ujung penulisan misalnya.
kutipan:
FillChar(Buf^, BufSize, 32); // contoh: isi data dengan spasi kosong
klo DE kan semuanya nulis dengan karakter spasi kosong nah manfaatkan jika dah mo akhir pembengkakan dirimu tulis dengan karakter ukuran sebelumnya cuman jangan lupa tambahin juga function check size sebelum pembengkakan.
more 16 years ago
DelphiExpert
Ada beberapa cara:
1. Baca PE header, disitu ada record yg menunjukkan "image" size
atau
2. Sebelum mulai menulis data sampah, tulis terlebih dahulu sebuah "signature" diawal penulisan, dengan adanya signature ini kita bisa ketahui (detect & scan) berapa ukuran file originalnya. FileSize:= SignatureOffset
:mrgreen:
more ...
reply |
Report Obsolete
Last Articles
Last Topic
- PascalTalk #6: (Podcast) Kuliah IT di luar negeri, susah gak sih?
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #5: UX: Research, Design and Engineer
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #4: Obrolan Ringan Seputar IT
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #2: Membuat Sendiri SMART HOME
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #3: RADically Fast and Easy Mobile Apps Development with Delphi
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #1: Pemanfaatan Artificial Intelligence di Masa Covid-19
by LuriDarmawan in Tutorial & Community Project more 4 years ago - Tempat Latihan Posting
by LuriDarmawan in OOT more 4 years ago - Archive
- Looping lagi...
by idhiel in Hal umum tentang Pascal Indonesia more 12 years ago - [ask] koneksi ke ODBC user Dsn saat runtime dengan ado
by halimanh in FireBird more 12 years ago - Validasi menggunakan data tanggal
by mas_kofa in Hal umum tentang Pascal Indonesia more 12 years ago
Random Topic
- TinyXP all Version ... Legalkah ???
by budihermanto in Law, CopyRight and CopyLeft more 16 years ago - wah eror terus
by kaka in MySQL more 17 years ago - Project Tertentu pd Delphi 6 & 7 Tidak bisa breakpoint
by fafenail in Hal umum tentang Pascal Indonesia more 18 years ago - Mask / DisplayFormat pada QuickReport
by bad2001 in Reporting more 16 years ago - arithmetic coding
by aptho in Tip n Trik Pemrograman more 17 years ago - tcard data dari query
by brodien in Tip n Trik Pemrograman more 18 years ago - Tanya Konversi String
by tAtA in Tip n Trik Pemrograman more 17 years ago - (Help)mohon bantuan temen2 bikin flowchart dari code ini
by l14m in Tip n Trik Pemrograman more 13 years ago - Print dengan Word
by xerion in Tip n Trik Pemrograman more 18 years ago - Convert Color
by 3m8ooo in Hal umum tentang Pascal Indonesia more 15 years ago