Umesto pinga, sa masm32 (ml exe kaže 6.14) se može napraviti sleep komanda za konzolu, recimo:
Code:
.486
.model flat, stdcall
include C:\Programi\masm32\include\kernel32.inc
includelib C:\Programi\masm32\lib\kernel32.lib
Radi PROTO
.code
start:
invoke Radi
call ExitProcess
Radi proc
LOCAL strng: DWORD
LOCAL lup: BYTE
LOCAL br: BYTE
invoke GetCommandLine
mov strng, eax
invoke lstrlen, strng
dec eax
add strng, eax
mov edx, strng
mov ax, WORD PTR [edx]
mov br, al
.if br > 48 && br < 58
mov lup, 49
.REPEAT
add lup, 1
invoke Sleep, 1000
mov dl, br
.UNTIL lup > dl
.endif
ret
Radi endp
end start
dobija se exe fajl čija je veličina 1536, a ako se isti kompajlira iz VS2008 komandnog prompta (ml exe kaže 9.00..) dobije se fajl dužine 2048. Taj fajl se može pretvoriti u bite i onda kreirati i brisati slièno kao i bat fajl:
Code:
procedure TForm1.SleepClick(Sender: TObject);
const sleepfajl: array[0..1535] of byte = (
$4D,$5A,$90,$00,$03,$00,$00,$00,$04,$00,$00,$00,$FF,$FF,$00,$00,$B8,$00,$00,$00,$00,
$00,$00,$00,$40,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$B0,$00,$00,
$00,$0E,$1F,$BA,$0E,$00,$B4,$09,$CD,$21,$B8,$01,$4C,$CD,$21,$54,$68,$69,$73,$20,$70,
$72,$6F,$67,$72,$61,$6D,$20,$63,$61,$6E,$6E,$6F,$74,$20,$62,$65,$20,$72,$75,$6E,$20,
$69,$6E,$20,$44,$4F,$53,$20,$6D,$6F,$64,$65,$2E,$0D,$0D,$0A,$24,$00,$00,$00,$00,$00,
$00,$00,$5D,$17,$1D,$DB,$19,$76,$73,$88,$19,$76,$73,$88,$19,$76,$73,$88,$19,$76,$73,
$88,$1E,$76,$73,$88,$E5,$56,$61,$88,$18,$76,$73,$88,$52,$69,$63,$68,$19,$76,$73,$88,
$00,$00,$00,$00,$00,$00,$00,$00,$50,$45,$00,$00,$4C,$01,$02,$00,$3A,$2B,$DF,$4A,$00,
$00,$00,$00,$00,$00,$00,$00,$E0,$00,$0F,$01,$0B,$01,$05,$0C,$00,$02,$00,$00,$00,$02,
$00,$00,$00,$00,$00,$00,$00,$10,$00,$00,$00,$10,$00,$00,$00,$20,$00,$00,$00,$00,$40,
$00,$00,$10,$00,$00,$00,$02,$00,$00,$04,$00,$00,$00,$00,$00,$00,$00,$04,$00,$00,$00,
$00,$00,$00,$00,$00,$30,$00,$00,$00,$02,$00,$00,$00,$00,$00,$00,$03,$00,$00,$00,$00,
$00,$10,$00,$00,$10,$00,$00,$00,$00,$10,$00,$00,$10,$00,$00,$00,$00,$00,$00,$10,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$14,$20,$00,$00,$28,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$20,$00,$00,$14,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$2E,$74,$65,$78,$74,$00,$00,$00,$6E,$00,$00,$00,$00,$10,$00,$00,$00,
$02,$00,$00,$00,$02,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$20,$00,
$00,$60,$2E,$72,$64,$61,$74,$61,$00,$00,$92,$00,$00,$00,$00,$20,$00,$00,$00,$02,$00,
$00,$00,$04,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$40,$00,$00,$40,
$00,$00,$00,$00,$00,$00,$00,$00,$E8,$05,$00,$00,$00,$E8,$4C,$00,$00,$00,$55,$8B,$EC,
$83,$C4,$F8,$E8,$47,$00,$00,$00,$89,$45,$FC,$FF,$75,$FC,$E8,$48,$00,$00,$00,$48,$01,
$45,$FC,$8B,$55,$FC,$66,$8B,$02,$88,$45,$FA,$80,$7D,$FA,$30,$76,$20,$80,$7D,$FA,$3A,
$73,$1A,$C6,$45,$FB,$31,$80,$45,$FB,$01,$68,$E8,$03,$00,$00,$E8,$17,$00,$00,$00,$8A,
$55,$FA,$38,$55,$FB,$76,$EA,$C9,$C3,$CC,$FF,$25,$0C,$20,$40,$00,$FF,$25,$00,$20,$40,
$00,$FF,$25,$04,$20,$40,$00,$FF,$25,$08,$20,$40,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$5E,$20,$00,$00,$70,
$20,$00,$00,$78,$20,$00,$00,$50,$20,$00,$00,$00,$00,$00,$00,$3C,$20,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$84,$20,$00,$00,$00,$20,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$5E,$20,$00,$00,$70,$20,$00,$00,
$78,$20,$00,$00,$50,$20,$00,$00,$00,$00,$00,$00,$75,$00,$45,$78,$69,$74,$50,$72,$6F,
$63,$65,$73,$73,$00,$B6,$00,$47,$65,$74,$43,$6F,$6D,$6D,$61,$6E,$64,$4C,$69,$6E,$65,
$41,$00,$73,$02,$53,$6C,$65,$65,$70,$00,$E2,$02,$6C,$73,$74,$72,$6C,$65,$6E,$41,$00,
$00,$4B,$45,$52,$4E,$45,$4C,$33,$32,$2E,$64,$6C,$6C,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00);
var strim: TMemoryStream;
begin
strim := TMemoryStream.Create;
try
strim.Write(sleepfajl, 1536);
strim.SaveToFile('...\sleep.exe');
finally
strim.Free;
end;
end;
Može da se startuje iz bat fajla za pravljenje pauze (1..9 sekundi):
sleep 1
ili
sleep 2
...
gde brojevi kao parametri predstavljaju sekunde.