We have been struggling around a strange problem for quite some time.
We are accessing NeroSDK(184.108.40.206) from C#. All the function calls are successful(NeroInit, GetAvailableDrivesEx etc), except for NeroBurn which throws an exception “Object reference not set to an instance of an object.”. Before giving the exception two call backs are called 1. SetPhaseCallback - “checking disks”, 2. AddLogLine - NERO_TEXT_STOP, text - “Unexpected exception”. After successful comparision with the similar program implemented in VC++(which works) byte by byte, we do not find any thing wrong with the implementation in C#. The only apprehension we have is on NeroAPIGlueConnect, which exists as a static library and hence we had to make a DLL in CPP so as to access from C#.
But the strange thing is that when we call NeroAPIGlueConnect function implemented in the new DLL from the VC++ implementation, NeroGetAPIVersionEx call fails. We are unmable to understand this ambiguity as NeroAPIGlueConnect call is actually successful.
It would be a tremendous help if any one can tell us, where we might be going wrong, or is there some way around to debug what is going wrong when NeroBurn is called.