Incorrect number of parameters. Function: FWRITE MinParams: 4. (",")

Started by Phreak, March 27, 2008, 07:59:04 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Phreak

[code language="bennu"]
//------------------------------------//
//Modifica una linea de un archivo
//------------------------------------//
FUNCTION File_PutLine(TextFile tfile, INT LineNumber,STRING text)
PRIVATE
   INT aux,n;
   INT pos1,pos2,buffersize;
   BYTE POINTER buffer;
BEGIN
   //Linea inexistente
   IF ([tfile].lines<LineNumber) RETURN ""; END

   //Guarda la posicion
   aux=ftell([tfile].fileid);
   
   //Se posiciona en el principio
   fseek([tfile].fileid,0,0);
   
   //Busca la linea
   n=(-1);
   WHILE (n<LineNumber)
      fgets([tfile].fileid);   
      n++;
   END
   
   //Guarda las posicion del los extremos de la linea a reemplazar
   pos1=ftell([tfile].fileid);
   fgets([tfile].fileid);
   pos2=ftell([tfile].fileid);
   
   //Guarda en buffer lo que se pierde
   buffersize=flength([tfile].fileid)-pos2;
   buffer=alloc(sizeof(BYTE)*buffersize);
   fread([tfile].fileid,buffer,);
   
   //Agrega la linea nueva
   fseek([tfile].fileid,pos1,0);
   fputs([tfile].fileid,text);
   
   //Agrega el buffer al final
   fseek([tfile].fileid,pos1+len(text),0); //REVISAR EL AUMENTO!!!!!!!
   fwrite([tfile].fileid,buffer,buffersize);             //EN ESTA LINEA APARECE EL ERROR
   
   //Restaura la posicion
   fseek([tfile].fileid,aux,0);
   
   //Libera el buffer
   free(buffer);
   
   //Recarga el buffer
   IF (LineNumber>=[tfile].scrollpos AND LineNumber<=[tfile].scrollpos+bufferlines)
      File_ReloadBuffer(tfile);
   END
END
[/code]

SplinterGU

en el archivos modules-wip2.txt estan todos los prototipos... sin ver el codigo y leyendolo te digo...

hay 2 formatos para fwrite:

        INT    FWRITE       (I,V++)
        INT    FWRITE       (P,I,I)

el primero es:

id de archivo, variable a grabar

el segundo es:

puntero... ummmm... del area de datos a guardar, tamano de dicho area, id de archivo a grabar...


Download Lastest BennuGD Release: http://www.bennugd.org/node/2