
Crear archivo en memoria.
#1
Posted 06 March 2009 - 05:38 PM
Saludos
#2
Posted 06 March 2009 - 05:49 PM
Encontré esto que pides pero está en C# si te sirve te tocará migrarlo a Delphi

Enviar un Stream por FTP
Salud OS
#3
Posted 07 March 2009 - 05:34 AM
Opción 1:
var Str: TStringList; Mem: TMemoryStream; begin Str:= TStringList.Create; try Str.Add('Linea 1'); Str.Add('Linea 2'); Str.Add('Linea 3'); Mem:= TMEmoryStream.Create; try Str.SaveToStream(Mem); // Aqui haz lo que quieras con el TMemoryStream, por ejemplo Mem.SaveToFile('f:\1.txt'); finally Mem.Free; end; finally Str.Free; end; end;
Opción 2:
procedure WriteStringToStream(Stream: TStream; Str: String); begin Str:= Str + #13#10; // Salto de linea Stream.WriteBuffer(PChar(Str)^,Length(Str)); end; procedure TForm1.Button1Click(Sender: TObject); var Mem: TMemoryStream; begin Mem:= TMEmoryStream.Create; try WriteStringToStream(Mem,'Linea 1'); WriteStringToStream(Mem,'Linea 2'); WriteStringToStream(Mem,'Linea 3'); // Aqui haz lo que quieras con el TMemoryStream, por ejemplo Mem.SaveToFile('f:\2.txt'); finally Mem.Free; end; end;
Este ultimo método es valido pata todas las versiones de delphi excepto para la ultima (2009) ya que en esta versión un carácter de una cadena puede ocupar mas de un byte.
#4
Posted 07 March 2009 - 10:48 AM
Saludos
#5
Posted 27 October 2009 - 08:51 AM
Tengo un sistema que se comnica con la impresora fiscal samsung bixolon, tiene un año trabajando muy bien. El asunto es que ahora me piden que grabe el numero de la factura en la impresora fiscal al momento de la impresion, ok hasta aqui todo bien ya que eso lo supe hacer. El comando que me lo permite es:
function UploadStatusCmd(status:Pointer;error:Pointer;cmd:string): boolean; stdcall external 'tfhkaif.dll';
Lo que pasa es que el escribe la información en un archivo, como se podria hacer para que ese archivo no se grabe en el disco sino que permanezca en memoria?? hay forma de hacerlo??
#6
Posted 27 October 2009 - 09:08 AM
...escribe la información en un archivo, como se podria hacer para que ese archivo no se grabe en el disco sino que permanezca en memoria?? hay forma de hacerlo??
Hace unos meses solucione un problema similar haciendo un hook sencillo a la API WriteFile, obviamente dicho hook solo debe aplicarse a al proceso propio.
#7
Posted 27 October 2009 - 09:18 AM

#8
Posted 27 October 2009 - 09:28 AM
ok, interesante punto de vista, voy a intentarlo
Qué es lo que buscas? que no se cree el archivo, que no se escriba la informacion... o capturar la informacion?
#9
Posted 27 October 2009 - 09:37 AM
ok, interesante punto de vista, voy a intentarlo
Qué es lo que buscas? que no se cree el archivo, que no se escriba la informacion... o capturar la informacion?
Recibir la información, pero sin crear el archivo.
