Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-06-2011
Avatar de julyus
julyus julyus is offline
Miembro
 
Registrado: jul 2006
Ubicación: IN TO PLACES COLOMBIA AND EE.UU
Posts: 121
Poder: 18
julyus Va por buen camino
error

Código Delphi [-]
type
  TextFile = ^Text; esto lo encontre en internet y slucionaba el error
  cbkParmsCrystal = procedure(var posStoredProcs, posCrystalProcs: integer
    ; titulo: string) of object;
  cbkConfigFile = function(var f: TextFile; var st: string): integer of object;

compilo y encuentro esto es incompatible tipes en F si es de tipo text

Código Delphi [-]
function leaLinea(var f: TextFile; var texto: string): boolean;
var
  comentario: boolean;
begin
  repeat
    if eof(F) then
    begin
      texto := KS_FIN_DE_ARCHIVO;
      comentario := false;
    end
    else
    begin
      readln(F, texto);
      comentario := (trim(texto) = '') or (copy(trim(texto), 1, 2) = '::');
    end;
  until not comentario;
  texto := StringReplace(texto, #9, '     ', [rfReplaceAll]);
  texto := trim(texto);
  result := copy(texto, 1, 1) = '[';
end;

o me agradaria saber TextFile por que lo puedo cambiar
en una funcion antes me salia internal error TI894 que sucedia dento de una funcion del ripo que estoy creando ?? alguien le ha pasado esto ???
Responder Con Cita
  #2  
Antiguo 04-06-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Hola, julyus, ya llevas un montón de mensajes para que no sigas nuestras normas, recuerda leerlas, gracias
Responder Con Cita
  #3  
Antiguo 04-06-2011
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.197
Poder: 20
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
En verdad que no entiendo lo que quieres decir.

Saludos.
Responder Con Cita
  #4  
Antiguo 04-06-2011
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
yo creo que si divides Viernes entre mil te sale 36
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #5  
Antiguo 04-06-2011
leofuentes21 leofuentes21 is offline
Miembro
NULL
 
Registrado: feb 2011
Ubicación: la ceiba, atlantida
Posts: 66
Poder: 14
leofuentes21 Va por buen camino
Hola amigo yo soy un poco nuevo pero te aconsejo como dijo Casimiro que leas la guia de estilo para que puedas ser mas explicito en tus preguntas y te puedan ayudar.

suerte saludos¡¡
Responder Con Cita
  #6  
Antiguo 04-06-2011
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 julyus.

Yo tampoco tengo claro cuál es el problema y claro, no sé cuál es el propósito de la función.
Reduje un poco el código respetando la lógica de la función y de este modo no obtengo ningún tipo de error. Pero por supuesto no se si hace lo que tiene que hacer por que desconozco 'que es lo que tiene que hacer'.
Código Delphi [-]
function leaLinea(var F: TextFile; var Texto: string): boolean;
begin
  while not Eof(f) or (Trim(texto) = '')or(Copy(Trim(Texto),1,2)= '::') do
    Readln(F, Texto);
  Texto:= StringReplace(Texto, #9, '     ',[rfReplaceAll]);
  Texto:= Trim(Texto);
  Result:= Copy(Texto, 1, 1) = '[';
  if Eof(F) then Texto:= 'KS_FIN_DE_ARCHIVO';
end;


Llamada de prueba:
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  F: TextFile;
  s: string;
begin
  AssignFile(F, 'C:\TEMPORAL\PRUEBA.TXT');
  Reset(F);
  try
   if LeaLinea(F, S) then
     ShowMessage('True: ' + s)
   else
     ShowMessage('False:' + s);
  finally
    FileClose(F);
  end;
end;
Si nos pusieras que pretendes que haga la función sería más sencillo orientarte.

Edito: No utilizé este código en absoluto:
Código Delphi [-]
type
  TextFile = ^Text; esto lo encontre en internet y slucionaba el error
  cbkParmsCrystal = procedure(var posStoredProcs, posCrystalProcs: integer
    ; titulo: string) of object;
  cbkConfigFile = function(var f: TextFile; var st: string): integer of object;

Saludos.
__________________
Daniel Didriksen

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

Última edición por ecfisa fecha: 04-06-2011 a las 11:21:31.
Responder Con Cita
  #7  
Antiguo 07-06-2011
Avatar de julyus
julyus julyus is offline
Miembro
 
Registrado: jul 2006
Ubicación: IN TO PLACES COLOMBIA AND EE.UU
Posts: 121
Poder: 18
julyus Va por buen camino
hola amigos

Hola amigo la verdad si fui muy poco explicito en la pregunta
estoy pasando de delphi 7 a 2010 componentes creados sencillos nada de terceros esos ya los solucione actualizandolos

tengo un problema que aqueja mi programa es una funcion de este tipo no importa lo que haga lo que importa es el dicho problema en delphi 2010
en la definicion escrita abajo el texto en rojo me dice que desconoce el tipo o no es de clarado... el texto en azul encontre en el BND donde un usuario delphi del comun como una solucion al declarar estos tipos de funciones asi... y se solucinaban. esto aparece como un error reportado en embarcadero pero nunca hablan de una solucion para esto.. me han dejado por primera vez jodido este es reportado por el IDE como un internal error TI894.

no hablo del rad mal ya que este es el lenguaje de mis amores pero ha dado un cambio con lo de unicode bien complejo...pero bueno esta parte ya la solucione

Código Delphi [-]
Type
  TextFile = ^Text;
   cbkConfigFile = function(var f: TextFile; var st: String): integer of object;

el siguiente son el resultante de problema anterior es el siguiente
me dice que f es de tipo incompatible?? Por que ?? quiero saber por que
no es compatible o que puedo hacer gracias de antemano es por la definicion de arriba detodas maneras eso creo que es de tipo text y no textfile ?? puede ser eso ??


Código Delphi [-]
function leaLinea(var F: TextFile; var texto: string): boolean;
var
  comentario: boolean;
begin
  repeat
    if eof(F) then
    begin
      texto := KS_FIN_DE_ARCHIVO;
      comentario := false;
    end
    else
    begin
      readln(F, texto);
      comentario := (trim(texto) = '') or (copy(trim(texto), 1, 2) = '::');
    end;
  until not comentario;
  texto := StringReplace(texto, #9, '     ', [rfReplaceAll]);
  texto := trim(texto);
  result := copy(texto, 1, 1) = '[';
end;
Responder Con Cita
  #8  
Antiguo 07-06-2011
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 Julyus.
Cita:
me dice que f es de tipo incompatible?? Por que ??
Creo que es por que esta esperando un tipo de variable y al redefinir TextFile como puntero a Text, le estas enviando un puntero a ese tipo y no la variable de ese tipo.

Pienso que sería más o menos como hacer:
Código Delphi [-]
...
type
  Integer = ^Integer;

procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer;
begin
  if Odd(i) then // <- error: Incompatible types
    ...  
end;
Pero no puedo afirmarlo, es una presunción basada en que una función que espera un tipo va a protestar si le enviás otro...


Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #9  
Antiguo 07-06-2011
Avatar de julyus
julyus julyus is offline
Miembro
 
Registrado: jul 2006
Ubicación: IN TO PLACES COLOMBIA AND EE.UU
Posts: 121
Poder: 18
julyus Va por buen camino
Código Delphi [-]
type
PStrRec = ^StrRec;
StrRec = packed record
codePage: Word;
elemSize: Word;
refCnt: Longint;
length: Longint;
end;

sabes encuento un error llamado ti894 en Quality central pero nadie responde nada ?????????
Responder Con Cita
  #10  
Antiguo 08-06-2011
Avatar de julyus
julyus julyus is offline
Miembro
 
Registrado: jul 2006
Ubicación: IN TO PLACES COLOMBIA AND EE.UU
Posts: 121
Poder: 18
julyus Va por buen camino
Question Funcion callback o

Hola amigos que pena vovelr a hacer un post de este mismo tema
tengo una funcione delphi 2010 con un delegado o callback mas o menos asi

Código Delphi [-]
Type
 cbkConfigFile = function(var f: TextFile; var st: string): integer of object;

mis problema es que sale un error internal error TI894 y segun lo que he revisado es por el tipo de variable f:TextFile a alguien le ha pasado esto ???
o que tipo debo usar esta es la funcion completa ver abajo
no se si es mi delphi alguien pruebe esto o hay otra mejor forma de hacer esto ?? gracias a todos por su ciolaboracion...

Código Delphi [-]
type
   // metodo callback para pasar otros parámetros al reporte crystal
   cbkParmsCrystal = procedure(var posStoredProcs, posCrystalProcs: integer; titulo: string) of object;
   // metodo callback para leer una parte del archivo de configuración del reporte
   cbkConfigFile = function(var f: TextFile; var st: string): integer of object;

type
   TRptTemplate = class(TObject)
   private
    fLectorConfigCallBack: cbkConfigFile;
    fParametrosCallBack: cbkParmsCrystal;
    fQbe: TKSDBQBE;
    // path donde se encuentra el archivo STR
    pathSTR: string;
  public

Última edición por julyus fecha: 08-06-2011 a las 22:31:27.
Responder Con Cita
  #11  
Antiguo 08-06-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
No repitas temas, si es el mismo, sigue con el que has abierto. Recuerda nuestras normas. Gracias.
Responder Con Cita
  #12  
Antiguo 08-06-2011
Avatar de julyus
julyus julyus is offline
Miembro
 
Registrado: jul 2006
Ubicación: IN TO PLACES COLOMBIA AND EE.UU
Posts: 121
Poder: 18
julyus Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
No repitas temas, si es el mismo, sigue con el que has abierto. Recuerda nuestras normas. Gracias.
Hola casimiro lo que pasa es que lo habia posteado sin leer la guia y era confuso y pocos me contestaron gracias..!
Responder Con Cita
  #13  
Antiguo 09-06-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por julyus Ver Mensaje
Hola casimiro lo que pasa es que lo habia posteado sin leer la guia y era confuso y pocos me contestaron gracias..!
Bien, pues explícalo para que lo entendamos, a ver si así te podemos ayudar, gracias.
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
Ejemplo de callback jars API de Windows 2 04-02-2011 14:05:22
callback para drawtext textout callbacking API de Windows 8 27-07-2008 02:42:33
Implementacion de Callback walito Varios 6 26-09-2006 20:03:22
WaveInOpen y Callback walito API de Windows 6 08-07-2006 00:06:58
Marshall y CallBack´s Edgar Perez Providers 0 03-05-2006 16:39:55


La franja horaria es GMT +2. Ahora son las 09:31:12.


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