Ver Mensaje Individual
  #1  
Antiguo 26-08-2014
JuanOrtega JuanOrtega is offline
Miembro
NULL
 
Registrado: sep 2011
Posts: 130
Reputación: 13
JuanOrtega Va por buen camino
Agregar peso vacio a un ejecutable

Hola estoy por volverme loco con este problema , hace dos dias que estoy tratando de buscar informacion de como abrir un archivo y agregarle peso vacio a un archivo ejecutable que es lo que originalmente hace este codigo en C#.

Codigo C#

Código:
            byte[] b = new byte[50 * 1024]; /* 50 kb */
            FileStream fS = File.Open("test.exe", FileMode.Append);
            fS.Write(b, 0, b.Length);
            fS.Close();
Lo peor es que el codigo en C# funciona perfecto y son solo cuatro lineas cuando en delphi eh hecho mas y termino arruinando el archivo ejecutable.

Inicialemente intente con :

Código:
procedure SaveBytesToFile(const Data: TBytes; const FileName: string);
var
  stream: TMemoryStream;
begin
  stream := TMemoryStream.Create;
  try
    if length(data) > 0 then
      stream.WriteBuffer(data[0], length(data));
    stream.SaveToFile(FileName);
  finally
    stream.Free;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
SaveBytesToFile(1024,'test.exe');
end;
Pero el problema con este codigo es que no encuentro y no se que tengo que poner en el valor TBytes en el primer argumento que supongo que
es el peso que quiero agregar puse 1024 pero da error y no encuentro informacion de que valor tengo que poner.

Tambien intente con este codigo :

Código:
procedure TForm1.Button1Click(Sender: TObject);
var  fs:tfilestream;
       buffer:integer;
begin

fs.create('test.exe',fmcreate);
fs.writebuffer(buffer,'1024');
fs.free;

end;
Intente en este codigo agregar 1024 bytes pero en este intento termino arruinando el ejecutable.

¿ Que estoy haciendo mal ?
Responder Con Cita