Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-02-2013
KroSaver KroSaver is offline
Miembro
NULL
 
Registrado: feb 2013
Posts: 20
Poder: 0
KroSaver Va por buen camino
Question Archivo de texto

Hola muy buenas a todos mire me estoy iniciando en Delphi y tengo unos problemas con una aplicacion que estoy haciendo y es con los archivos de texto.

Me salta un error muy raro que no entiendo que es en en la linea Append(Logs); de este code:

Código:
uses
  Windows,SysUtils;


var
  Logs: TextFile;
  DirLogs: String;
  Caracter: Integer;
  Ventana: HWND;
  VentanaA: array [0..MAX_PATH] of Char;
  VentanaB: array [0..MAX_PATH] of Char;

begin

DirLogs := 'C:\kr.txt';

if FileExists(DirLogs) then
else
  begin
  AssignFile( Logs, DirLogs );
  Rewrite( Logs );
  WriteLn(Logs,'>-----< PROVANDO >-----<');
  CloseFile(Logs);
  end;

  while(true)do
  begin
  sleep(20);
  Ventana:=GetForegroundWindow();
  GetWindowText(Ventana,VentanaA,MAX_PATH);

    if(VentanaA<>VentanaB)then
    begin

      Append(Logs);
      Writeln(Logs,'PROVANDO');
      CloseFile(Logs);
      VentanaA := VentanaB;

    end;

  end;
end.
El error que da es este:

Project Project1.exe raised exception class EInOutError with message "I/O error 102". Process stopped. Use Step or Run to continue.

Y otro error esta en la linea VentanaA := VentanaB; me dice que son tipos incompatibles algo que en IDE Lazarus no me dava este error y me funcionaba bien.

Para este code uso Delphi 7 Enterprise.

gracias de antemano y saludos.
Responder Con Cita
  #2  
Antiguo 20-02-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola KroSaver, bienvenido a Club Delphi.

El error 102 (File not assigned) se presenta en tu código por que el archivo solo es asignado en la creación debido al condicional if :
Código Delphi [-]
  ...
  if FileExists(DirLogs) then
  // Si existe ... ??
  else
  begin
    // Aquí (cuando no existe) no tendría que generar error
    AssignFile( Logs, DirLogs );
    Rewrite( Logs );
    WriteLn(Logs,'>-----< PROBANDO >-----<');
    CloseFile(Logs);
  end;
  ...
  if(VentanaA<>VentanaB)then
  begin
    Append(Logs);  // ¡¡¡ Error !!!  El archivo no está asignado
    ...

Del modo siguiente, el archivo es asignado tanto para Rewrite como para Append o Reset y no dará error.
Código Delphi [-]
...
  AssignFile(Logs, DirLogs);
  if not FileExists(DirLogs) then
  begin
    Rewrite(Logs);
    WriteLn(Logs,'>-----< PROBANDO >-----<');
    CloseFile(Logs);
  end;
...

En cuanto a la asignación de arreglos en Delphi, proba de este modo:
Código Delphi [-]
 Move(VentanaA, VentanaB, SizeOf(VentanaB));

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 20-02-2013 a las 13:47:31. Razón: agregar comentario al código
Responder Con Cita
  #3  
Antiguo 20-02-2013
KroSaver KroSaver is offline
Miembro
NULL
 
Registrado: feb 2013
Posts: 20
Poder: 0
KroSaver Va por buen camino
Uff que bueno muchisimas gracias ecfisa todo solucionado ahora funciona de 10!

saludos
Responder Con Cita
  #4  
Antiguo 20-02-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por KroSaver Ver Mensaje
Uff que bueno muchisimas gracias ecfisa todo solucionado ahora funciona de 10!

saludos
No tenes nada que agradecer.

Esto es una de las tantas buenas cosas de Club Delphi: Es un ida y vuelta de información. (Hasta leer tu mensaje no sabía que en Lazarus se podían asignar arreglos de ese modo)

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 20-02-2013 a las 14:43:31. Razón: sintáxis
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
archivo mp3+texto 2-D@monic Varios 12 01-08-2008 04:20:30
Como puedo grabar texto en un Archivo de Texto sin Sobreescribir???? AGAG4 Varios 12 08-11-2005 22:53:00
archivo de texto jovehe Impresión 16 13-10-2004 22:44:39
Db y archivo de texto carlospcs MySQL 0 10-08-2004 23:51:14
Archivo de Texto tiel Varios 5 16-07-2004 20:37:12


La franja horaria es GMT +2. Ahora son las 10:33:47.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi