I have to take special care in case that media is full during a burn operation so my first try was to return from the User Dialog callback with DLG_RETURN_EXIT in case the Nero-API delivers DLG_WAITCD and wait type=NERO_WAITCD_NOTENOUGHSPACE to this callback function. This doesn’t work since after inserting another media into the drive Nero continues although I’ve requested it to exit.
My second try was to make a workaround and set a flag in the user dialog callback that is checked in the idle callback function and in case that bit is set the idle callback returns TRUE. In that case the burn attempt is stopped after I’ve inserted a new media but Nero behaves a little bit strange afterwards:
The drive status callback is called twice one indicating that a new media is inserted (that’s OK) and another that it has been remove (that’s not OK since the media is still in the drive).
When I try to get a NERO_CD_INFO structure using NeroGetCDInfo function this returns a NULL pointer!
What is the appropriate way to handle this? I hope that my explanations described my problem.