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 30-07-2007
camambrini camambrini is offline
Miembro
 
Registrado: ene 2004
Ubicación: San Miguel de tuc.
Posts: 21
Poder: 0
camambrini Va por buen camino
Smile error en AssignFile

Hola a todos nuevamente en el foro esta vez para pedir ayuda porque este problema me esta volviendo loco, el asunto es que deseo crear un archivo binario con tipo pero me da error el codigo que utilizo es el siguiente

procedure carga_config;
var
config:registro;
archivo: file of registro;
begin
{$i-}
AssignFile(archivo,'domo.cgf');
reset(arch);
blockread(arch,sizeof(registro);
CloseFile(configa);
{$I+}

el error esta en AssignFile y es el siguiente:
[Error] domo.pas(208): There is no overloaded version of 'AssignFile' that can be called with these arguments

alguien podria explicarme que ocurre y como lo soluciono?
desde ya muchas gracias
__________________
CAM
Responder Con Cita
  #2  
Antiguo 30-07-2007
Avatar de Enan0
Enan0 Enan0 is offline
Miembro
 
Registrado: may 2004
Ubicación: Argentina
Posts: 565
Poder: 20
Enan0 Va por buen camino
Bueno una tonteria!!, Pero! estas seguro que la aplicacion se esta ejecutando en el mismo lugar que se encuentra el domo.cfg?
Yo te aconsejaria que utilises el path completo, ya que algunas veces se pierde la ruta.
Podrias vefiricarl o con

Código Delphi [-]

If FileExists('miarchivo') then
  reset(arch)
else
  rewrite(arch);

o mostrar un mensaje de que el archivo no existe.

Saludos

Última edición por Enan0 fecha: 30-07-2007 a las 13:45:47.
Responder Con Cita
  #3  
Antiguo 30-07-2007
Avatar de defcon1_es
defcon1_es defcon1_es is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuenca - España
Posts: 533
Poder: 21
defcon1_es Va por buen camino
Cita:
Empezado por camambrini
deseo crear un archivo binario con tipo pero me da error el codigo que utilizo es el siguiente

procedure carga_config;
var
config:registro;
archivo: file of registro;
begin
{$i-}
AssignFile(archivo,'domo.cgf');
reset(arch);
blockread(arch,sizeof(registro);
CloseFile(configa);
{$I+}

el error esta en AssignFile y es el siguiente:
[Error] domo.pas(208): There is no overloaded version of 'AssignFile' that can be called with these arguments
Hola, creo que no has copiado bien el código (o no usas Delphi 6),
porque hay varias cosas que no me cuadran...

Código Delphi [-]
procedure carga_config;
var
//  config:registro; esta variable no se usa para nada...creo.
  archivo: file of registro;
  Buffer: array[1..2048] of Char;
begin
{$i-}
  AssignFile(archivo,'domo.cgf');
  reset(archivo);
  blockread(archivo,Buffer,sizeof(registro));
  CloseFile(archivo);
{$I+}
end;

En la ayuda de Delphi 6, viene la siguente declaracion de BlockRead:
Código Delphi [-]
procedure BlockRead(var F: File; var Buf; Count: Integer [; var AmtTransferred: Integer]);
Y creo que por eso el compilador te da ese error, no por el assignfile, sino por el blockread...
__________________
Progress Openedge
https://abevoelker.com/progress_open...dered_harmful/


Delphi forever...
Responder Con Cita
  #4  
Antiguo 30-07-2007
Avatar de Enan0
Enan0 Enan0 is offline
Miembro
 
Registrado: may 2004
Ubicación: Argentina
Posts: 565
Poder: 20
Enan0 Va por buen camino
Cita:
Empezado por camambrini
deseo crear un archivo


Creo que no leimos bien!1

Si es crear, cambia el RESET, por REWRITE
ya que reWrite si el archivo no existe lo crea, y si existe lo hace Bosta
Responder Con Cita
  #5  
Antiguo 30-07-2007
Avatar de Enan0
Enan0 Enan0 is offline
Miembro
 
Registrado: may 2004
Ubicación: Argentina
Posts: 565
Poder: 20
Enan0 Va por buen camino
Cita:
Empezado por camambrini
Código Delphi [-]
procedure carga_config;
var
config:registro;
archivo: file of registro;
begin
{$i-}
AssignFile(archivo,'domo.cgf');
reset(arch);
blockread(arch,sizeof(registro);
CloseFile(configa);
{$I+}
Primero que nada Verifica el codigo!! porque?
ESTAS HACIENDO UN ASSING a "ARCHIVO"
pero Reseteas ARCH!!!!!!
en block Read como dijo "defcon1_es" esta incompleto!!
y por ultimo!! estas Cerrando cualquier cosa!!
CloseFile(configa) calculo que querras decir!! config!!
pero de todos modos. tendria que ser "archivo" o en el peor de los casos "arch"

fijate y eso contanos como va la cosa
Responder Con Cita
  #6  
Antiguo 30-07-2007
camambrini camambrini is offline
Miembro
 
Registrado: ene 2004
Ubicación: San Miguel de tuc.
Posts: 21
Poder: 0
camambrini Va por buen camino
Smile assignfile

ok en 1º er lugar quiero agradeser la pronta repuesta y 2º quiero disculpame pues copie un bloque del programa que estava en proceso de modificacion y esta por ende no tiene sentido
el codi real es:

type
registro = record
salida : array[1..8]of integer;
clav1:string[30];
clav2:string[30];
saludo:string[30];
menu: array [1..8]of string[50];
articulo:array[1..8]of string[30];
ring:integer;
end;

procedure TForm1.Button1Click(Sender: TObject);
var reg:registro;
arch:file of registro;
begin
assignfile(arch,'c:\domo\config.dat');
reset(arch);
read(arch,reg);
end;

el error se produce en assignfile y el error es:
[Error] domo.pas(208): There is no overloaded version of 'AssignFile' that can be called with these arguments
__________________
CAM
Responder Con Cita
  #7  
Antiguo 30-07-2007
Avatar de Enan0
Enan0 Enan0 is offline
Miembro
 
Registrado: may 2004
Ubicación: Argentina
Posts: 565
Poder: 20
Enan0 Va por buen camino
A ver, Podrias contarnos que version de delphi estas usando?

ya que al parecer todo funciona todo bien.. yo lo probre y no me da error!
estoy trabajando con delphi 5
y si lo depuras paso a paso.. en que linea te da el error exactamente
Responder Con Cita
  #8  
Antiguo 30-07-2007
camambrini camambrini is offline
Miembro
 
Registrado: ene 2004
Ubicación: San Miguel de tuc.
Posts: 21
Poder: 0
camambrini Va por buen camino
Smile

uso delphi7 y el error es el la linea de assingnfile.lo extraño es que genro una nueva aplicacion pruevo este codigo y funciona correctamemte asi que no se que puede estar pasado, en la plaicacion donde falla es la unica estructura que utilizo y tambien es el unico archivo que manejo. la plicacion corre sobre xp sp2

desde ya muy agradecido por responder
__________________
CAM
Responder Con Cita
  #9  
Antiguo 30-07-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
El problema lo veo muy raro porque en Delphi 7, los parámetros que le pasas deben funcionar sí o sí. Lo único que se me ocurre es que ese AssignFile no sea el que todos estamos pensando, lo cual podría ocurrir si estás incluyendo alguna unidad que tenga un procedimiento con ese mismo nombre. Sea esto o no, pon el cursor del ratón sobre el nombre del procedimiento y verifica que el hint diga System.AssignFile, y revisa que la lista de parámetros (Ctrl+Shift+Espacio) sea en efecto (var F: File; FileName: String).

// Saludos
Responder Con Cita
  #10  
Antiguo 31-07-2007
camambrini camambrini is offline
Miembro
 
Registrado: ene 2004
Ubicación: San Miguel de tuc.
Posts: 21
Poder: 0
camambrini Va por buen camino
Talking

OK roman sos un genio, te comento que todo estva bien uncluso verifique lo que me digiste pero merche preso no funciono, finalmente se me ocurrio la siguiente solucion

System.AssignFile(var F: File; FileName: String);

de esta forma funciona de 10

estoy muy agradecido por la hayuda de todos
__________________
CAM
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
Error Abstract Error y Access violation zvf OOP 33 08-09-2010 18:50:33
'DBX Error: No Mapping for Error Code Found' CHECHE81 Conexión con bases de datos 1 09-06-2010 02:11:35
Error 10093 al ver un informe - Que error es este? URBANO Impresión 1 03-02-2006 18:44:39
¿Por qué me da este error?Error creating cursor manejador nuri SQL 2 01-08-2005 17:30:28
Error: RichEdit line insertation error DarkByte Varios 3 19-07-2004 12:28:09


La franja horaria es GMT +2. Ahora son las 17:05:05.


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