Einzelnen Beitrag anzeigen

Razor03

Registriert seit: 1. Jul 2005
10 Beiträge
 
#1

C++ DLL in Delphi einbinden

  Alt 4. Okt 2005, 22:05
Ich habe eine C++ DLL, die ich in Delphi einbinden will, von der ich aber die Aufrufparameter nicht weiß.

Ich habe allerdings den C++ Quellcode. Nur leider komme ich da nicht weiter.
Ich kann an dieser Stelle mit dem typedef und den enums nichts anfangen und weiß das in Delphi nicht umzusetzen.

Wie definiere ich die 3 Funktionen in Delphi?

PseudoDB* CreatePseudoDB();

void PseudoDB_Destroy(PseudoDB* pDB);

int PseudoDB_LoadFromUSBRoot(PseudoDB* pDB,const wchar_t* sUSBRoot);



wäre für einen Tip echt dankbar
Ich benutze Delphi 6


Hier der Quellcode-Auszug


Code:
typedef struct{} PseudoDB;

typedef struct{} PseudoTrack;
typedef struct{} PseudoPlayList;


enum
{
   TrackStr_Album=0,
   TrackStr_Artist,
   TrackStr_Title,
   TrackStr_Genre,
   TrackStr_Comment,
   TrackStr_Composer,
   TrackStr_FileTypeDesc,
   TrackStr_Path,         
   TrackStr_IPodPath,         

   TrackStr_Count,
};

enum
{
   TrackInt_ID=0,         
   TrackInt_FileSize,
   TrackInt_Duration,      
   TrackInt_DiskNum,
   TrackInt_TotalDisks,
   TrackInt_TrackNum,
   TrackInt_TotalTracks,
   TrackInt_Year,
   TrackInt_Bitrate,
   TrackInt_VolumeAdjust,
   TrackInt_VolumeAdjustSoundCheck,
   TrackInt_CreatedTime,   
   TrackInt_PlayedTime,   
   TrackInt_ModifiedTime,   
   TrackInt_Rating,      
   TrackInt_PlayCount,      
   TrackInt_PlayCountSinceSync,
   TrackInt_SampleRate,
   TrackInt_AppRating,      
   TrackInt_BPM,

   TrackInt_Count,
};


enum
{
   PlayListStr_Name=0,

   PlayListStr_Count
};

enum
{
   PlayListInt_Type=0,

   PlayListInt_Count
};

enum
{
   PlayListType_Normal=0,
   PlayListType_Master=1,   
};




PseudoDB* CreatePseudoDB();

void PseudoDB_Destroy(PseudoDB* pDB);

int PseudoDB_LoadFromUSBRoot(PseudoDB* pDB,const wchar_t* sUSBRoot);
int PseudoDB_LoadFile(PseudoDB* pDB,const wchar_t* sFilename);
  Mit Zitat antworten Zitat