如何可以将TImageList中的图片全部保存一个文件(如资源文件)与如何读出? 救急呀!!

解决方案 »

  1.   

    可以把任意文件放入
    下面我给你一个放入Exe文件的例子,任意都是一样的
    RC文件中是
    nestexe exefile "c:\nestexe.exe" 
    程序里面是
    {$R nestexe.res}procedure TForm1.btnStartClick(Sender: TObject);
    var
      ResHandle : THandle;
      MemHandle : THandle;
      MemStream : TMemoryStream;
      ResPtr : PByte;
      ResSize : Longint;
      F: TFileStream;
    begin
      F := TFileStream.Create('d:\aa.exe',fmCreate);
      ResHandle := FindResource(hInstance, PChar('nestexe'), 'exefile');
      MemHandle := LoadResource(hInstance, ResHandle);
      ResPtr := LockResource(MemHandle);
      MemStream := TMemoryStream.Create;
      ResSize := SizeOfResource(hInstance, ResHandle);
      MemStream.SetSize(ResSize);
      MemStream.Write(ResPtr^, ResSize);
      FreeResource(MemHandle);
      MemStream.Seek(0, 0);
      F.CopyFrom(MemStream,MemStream.Size);
      F.Free;
      //
      MemStream.Free;
    end;