Hi,
You see, c++ code "char *" should be changed to VB code "ByVal XX As String"
And your VB code "ByRef XX As String" means "char **".
See fixed function declaration:
Code:
Declare Function StarBurn_CdvdBurnerGrabber_Create _
Lib "c:\windows\system32\StarBurn.dll" (ByRef ObjGrabber As Long, _
ByVal ExceptionText As String, ByVal TextSize As Long, ByRef _
SystemError As Long, _
ByRef PCDB_Fail_Info As CDB_Failure_Type, ByVal CallBack As Long, CallBackContext As Any, _
ByVal PortID As Byte, ByVal BusID As Byte, ByVal TargetID As Byte, ByVal LUN As Byte, _
ByVal CAcheSizeinMB As Long) As Long
Declare Function StarBurn_CdvdBurnerGrabber_GetDeviceInformation _
Lib "c:\windows\system32\StarBurn.dll" (ByVal ObjGrabber As Long, _
ByVal VendorID As String, ByVal ProductID As String, ByVal ProductRevisionLevel As String, _
ByRef BufferSizeInUchars As Long) As Long