Chunkを書き込もうとしているときにIFFWライブラリでエラーを取得します
-
30-10-2019 - |
質問
私が使用しようとしているとき ea iffw.cライブラリ IFFファイルを記述するには、startwgroup()呼び出しを通過することはできません。 Context-> ckhdr.cksizeがゼロであるため、iffwritebytes()で失敗します。内部iffwritebytes()()は、(size)!= sznotyetknownをチェックするif()があります。 (sznotyetwnownは定数です。) 例 それが機能するはずだと示しているようですが、私はその方法がわかりません。 iffwriteBytes()は、nbytesが4であるため、client_errorを返します-32ビットintを節約しようとしています。
私の失敗コード:
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;
}
最後の失敗、startwgroup()。
iffは、XMLと同様に、ライブラリなしでそれを生成できるほど簡単ですが、かつて一般的でよくテストされたライブラリを使用するといいでしょう。
質問は実際にはAmigaに関するものではありませんが、このファイル形式はAmigaで人気がありました。ちなみに、あなたは知っていましたか djvu, rmff, aiff、riff、およびその他の多くの形式はiffまたはわずかなバリエーションです?
アップデート: 読みやすいIFF説明.
正しい解決策はありません
所属していません StackOverflow