Obtenga un error en la biblioteca IFFW al intentar escribir fragmento
-
30-10-2019 - |
Pregunta
Cuando estoy tratando de usar el EA IFFW.C Biblioteca Para escribir un archivo IFF, no puedo superar la llamada startwgroup (). Falla en iffwritytes () porque context-> ckhdr.cksize es cero. Dentro de Iffwritytes () hay un if () que verifica ese (tamaño)! = Sznotyet conocido. (Sznotyet conocido es una constante.) El ejemplo parece indicar que debería funcionar, pero no puedo ver cómo. IffwriteBytes () devuelve Client_error porque nbytes es 4: estoy tratando de guardar un int.
Mi código de falla:
outfp = fopen(outfile, "wb");
ifferr = OpenWIFF(outfp, &filec, szNotYetKnown);
if (ifferr) {
return 2;
}
ifferr = StartWGroup(&filec, LIST, sizeof (ID_NATAMI_FLASH), ID_NATAMI_FLASH, &listc);
if (ifferr) {
printf("ifferr: %d\n", ifferr);
return 3;
}
El último falla, startwgroup ().
IFF es, como XML, lo suficientemente simple como para poder generarlo sin una biblioteca, pero sería bueno hacer un uso de una biblioteca una vez común y bien probada.
La pregunta no se trata realmente de Amiga, pero este formato de archivo fue popular en Amiga. Por cierto, ¿sabías? Djvu, RMFF, AIFF, RIFF y muchos otros formatos son IFF o ligeras variaciones?
Actualizar: Descripción de IFF fácil de leer.
No hay solución correcta