Burning Image File to Disc, Anyone

Hello All,

I am using NeroSDK 1.05 with VC++.

  1. I make an .iso image file and store it on the HD (“test.iso”) using -

NeroBurn(ndhDeviceHandle, NERO_ISO_AUDIO_CD, &writeCD,NBF_WRITE, 0, &npProgress);

This is successful.

  1. Now, I try to burn this image file (“test.iso”) to disc using -

memset (&nwiTmp, 0, sizeof(nwiTmp));
nwiTmp.nwiLongImageFileName = “C:\ est.iso”;
nwiTmp.nwiMediaType =MEDIA_CD;

int iRes = NeroBurn(ndhDeviceHandle, NERO_BURN_IMAGE_MEDIA, &nwiTmp,NBF_WRITE, 0, &npProgress);

This gives me an error –
Read Error in image file.
Initialization failed.

  1. I tried burning “test.iso” with NeroCmd and it gave -
    Initialisation failed.

  2. Tried using NeroExpress and “test.iso” was succesfully burnt on the disc.

Could anyone please point out where the trouble may be… where I am going wrong… All help will be greatly appreciated.

Thanks in advance.

What is your NeroAPI version? Rename the image file to a NRG extension and retry.

Hello Alex,

Thanks a lot for your reply. The NeroAPI version-

  1. On return from NeroGetAPIVersionEx(), I get a version number
    Though, in the file NeroAPI.h I find -

// This file is the interface for this version of NeroAPI

So, am assuming, usage of version

  1. I tried a few more things including your suggestion -

a) Change file extension to .nrg. But it still gaves the same failure.

b) The log is as follows -

#1 IMAGECOMP -2 File ImgComp.cpp, Line 3086
Read error in image file

#2 NEROAPI 2 File NeroAPI.cpp, Line 3234
Initialization failed

Thanks a lot again.


The problem seems to be the following -

nwiTmp.nwiLongImageFileName = “C:\ est.iso”; //wrong

strcpy(nwiTmp.nwiLongImageFileName, “C: est.iso”)


You NeroAPI does not know about nwiLongImageFileName field. This was introduced in the later versions. You must use [color=black]nwiImageFileName instead by doing a strcpy to it as you have shown below, only you are doing it with nwiLongImageFileName and I am not sure how can that work at all…


yes Alex, you are right… An oversight on my part… I am using the following code -

strcpy(nwiTmp.nwiImageFileName, “C:\ est.iso”)

So, if I want to use the features available in ver. (say, the nwiLongImageFileName member) is there anything specifically that must be done ? like calling NeroSetExpectedAPIVersionEx(6, 3, 1, 4, NULL) during my application initialization ?


If you want to use features of any particular version, you must have that (or any newer) version installed. No other tricks will help.