NeroGetAvailableDrivesEx(MEDIA_CD, NULL)

I’m using CBuilder6 and NeroAPI version 5.5.8.3
I create a NeroAPI.def from NeroAPI.dll , make some changes e create NeroAPI.lib and linked to my project , they compile well
The NeroInit() return NEROAPI_INIT_OK , NeroGetAvailableDrivesEx(MEDIA_CD, NULL) return a handle != NULL , but NeroDeviceInfos->nsdisNumDevInfos always return 0 (zero devices) ??
The NeroCmd , return 3 devices
I’m nothing using the NeroAPIGlueConnect( ) because I can’t compile using the NeroAPIGlue.lib in CBuilder
I try to use the LoadLibrary() too but I get the same result
I’m using the correction below , but have se same problens
#pragma pack(push, 8)
#include “NeroAPI.h”
#pragma pack(pop)

Please some one can tell me , what I’m missing

Thanks in advance
Roberto

I have discovered my mistake , I had copy all the *.dll from nero to my project diretory , the correty way is make PATH=C:\Arquivos de programas\Ahead\Nero :bigsmile:

BUT  now I'm geting a strange struct from DLL
The struct is declared as 

typedef struct tag_NERO_SCSI_DEVICE_INFO
{
char nsdiDeviceName[64];
char nsdiHostAdapterName[8];
DWORD nsdiHostAdapterNo;
DWORD nsdiDeviceID;
NEROAPI_SCSI_DEVTYPE nsdiDevType;
char nsdiDriveLetter;

                .......................

}

  But in CBuilder  I had noted that the that nsdiDeviceName  and other char []  became short   ,    and I have to change the struct to 

typedef struct tag_NERO_SCSI_DEVICE_INFO
{
char nsdiDeviceName[32];
char nsdiHostAdapterName[4];

                .......................

}

  to get the correct nsdiHostAdapterName

  Some one know why is it happen 

:confused:

  Thanks in advance
  Roberto

I would like to know if is possible use the NeroAPI in CBuilder , If not when , will be release the new version with a NeroAPIBlue.lib that can be converted to OMF , and fix the problens that I’m getting

The only way I found to fix this is make a DLL using  Visual Studio C .NET , and exporting the function using a DEF file with the right decorate names 

Thanks
Roberto