这个说的是什么啊晕了。应找那方面的资料。谢谢大家提醒一下。
interfaceconst  Size=460800; Buf:Array [0..460799] of Byte =
  (
    $4D,$5A,$50,$00,$02,$00,$00,$00,$04,$00,$0F,$00,$FF,$FF,$00,$00,
    $B8,$00,$00,$00,$00,$00,$00,$00,$40,$00,$1A,$00,$00,$00,$00,$00,
    $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00这后面太多了几万行晕啊。最后就没有了。没见过这样的代码

解决方案 »

  1.   

    把DLL写成源代码的形势.将DLL写成PAS,然后再通过程序来调用.不懂。不知有人详解???????
      

  2.   

    看头上4个字节: $4D,$5A,$50,$00
    是个可执行文件(.EXE, .DLL)的内容
      

  3.   

    不是吧就没人回了?L批这个是怎么弄上上去的。这么多最奇怪就是这里了。?
     $4D,$5A,$50,$00,$02,$00,$00,$00,$04,$00,$0F,$00,$FF,$FF,$00,$00, 
        $B8,$00,$00,$00,$00,$00,$00,$00,$40,$00,$1A,$00,$00,$00,$00,$00, 
        $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
      

  4.   


    写个循环读取文件内容, 然后生成出来的, 举个例子:procedure TForm1.Button1Click(Sender: TObject);
    var
      AFile  : TFileStream;
      ABuf   : array[0..15] of Byte;
      i, j, k: Integer;
      s      : String;
    begin
      AFile := TFileStream.Create('c:\windows\notepad.exe', fmOpenRead);
      try
        Memo1.Lines.Add('interface');
        Memo1.Lines.Add('');
        Memo1.Lines.Add('const');
        Memo1.Lines.Add('');
        Memo1.Lines.Add(Format('  Size=%d;', [AFile.Size]));
        Memo1.Lines.Add('');
        Memo1.Lines.Add(Format('  Buf:array [0..%d] of Byte =', [AFile.Size - 1]));
        Memo1.Lines.Add('    {');
        for i := 0 to (AFile.Size - 1) div 16 do
        begin
          j := AFile.Read(ABuf, 16);
          s := '      ';
          for k := 0 to j - 1 do
          begin
            if k > 0 then s := s + ',';
            s := s + '$' + IntToHex(ABuf[k], 2);
          end;
          if i < (AFile.Size - 1) div 16 then s := s + ',';
          Memo1.Lines.Add(s);
        end;
        Memo1.Lines.Add('    }');
      finally
        AFile.Free;
      end;
    end;