mmioCreateChunk function
The mmioCreateChunk function creates a chunk in a RIFF file that was opened by using the mmioOpen function. The new chunk is created at the current file position. After the new chunk is created, the current file position is the beginning of the data portion of the new chunk.
Syntax
MMRESULT mmioCreateChunk(
HMMIO hmmio,
LPMMCKINFO lpck,
UINT wFlags
);
Parameters
hmmio
File handle of an open RIFF file.lpck
Pointer to a buffer that receives a MMCKINFO structure containing information about the chunk to be created.wFlags
Flags identifying what type of chunk to create. The following values are defined.Value Meaning MMIO_CREATELIST "LIST" chunk. MMIO_CREATERIFF "RIFF" chunk.
Return value
Returns MMSYSERR_NOERROR if successful or an error otherwise. Possible error values include the following.
Return code | Description |
---|---|
MMIOERR_CANNOTSEEK | Unable to determine offset of the data portion of the chunk. |
MMIOERR_CANNOTWRITE | Unable to write the chunk header. |
Remarks
This function cannot insert a chunk into the middle of a file. If an application attempts to create a chunk somewhere other than at the end of a file, mmioCreateChunk overwrites existing information in the file.
The MMCKINFO structure pointed to by the lpck parameter should be set up as follows:
- The ckid member specifies the chunk identifier. If wFlags includes MMIO_CREATERIFF or MMIO_CREATELIST, this member will be filled by mmioCreateChunk.
- The cksize member specifies the size of the data portion of the chunk, including the form type or list type (if any). If this value is not correct when the mmioAscend function is called to mark the end of the chunk, mmioAscend corrects the chunk size.
- The fccType member specifies the form type or list type if the chunk is a "RIFF" or "LIST" chunk. If the chunk is not a "RIFF" or "LIST" chunk, this member does not need to be filled in.
- The dwDataOffset member does not need to be filled in. The mmioCreateChunk function fills this member with the file offset of the data portion of the chunk.
- The dwFlags member does not need to be filled in. The mmioCreateChunk function sets the MMIO_DIRTY flag in dwFlags.
Requirements
Minimum supported client |
Windows 2000 Professional [desktop apps only] |
Minimum supported server |
Windows 2000 Server [desktop apps only] |
Header |
Mmsystem.h (include Windows.h) |
Library |
Winmm.lib |
DLL |
Winmm.dll |