C++ vers VB

zgezou Messages postés 12 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 13 septembre 2005 - 1 juil. 2005 à 14:05
cs_remi1203 Messages postés 42 Date d'inscription jeudi 20 février 2003 Statut Membre Dernière intervention 5 novembre 2005 - 4 juil. 2005 à 13:18
Bonjour.
J'ai besoin de traduire ceci en VB mais je n'y arrive pas. Quelqu'un pourrait-il m'aider?



typedef struct{
cdMemType Type;
union{
cdChar* lpszFileName;
cdStream* pStream;
#ifdef macintosh
cdFSSpec* pFSSpec;
#endif
}u;
} cdStgMedium;


**************************************
typedef struct {
cdContext contextH;
//stream I/O function pointers
cdSOpen* open;
cdSClose* close;
cdSRead* read;
cdSWrite* write;
cdSSeek* seek;
cdSTell* tell;
} cdStream;


typedef cdVoid cdSTDCALL cdSOpen (cdUInt32 contextH, cdPermission, cdError *err);
typedef cdVoid cdSTDCALL cdSClose (cdUInt32 contextH, cdError *err);
typedef cdVoid cdSTDCALL cdSRead (cdUInt32 contextH, void*buf, cdUInt32 *bufsize, cdError*err); typedef cdVoid cdSTDCALL cdSWrite (cdUInt32 contextH, const void *buf, cdUInt32 *bufsize, psError psFAR *err);
typedef cdVoid cdSTDCALL cdSSeek (cdUInt32 contextH, cdWhence, psInt32 offset, cdError *err); typedef cdInt32 cdSTDCALL cdSTell (cdUInt32 contextH, cdError *err);
typedef char cdChar;
typedef void cdVoid;
typedef unsigned long cdUInt32;
typedef cdUInt32 cdError;



Merci beaucoup d'avance.

Zgezou

3 réponses

cs_remi1203 Messages postés 42 Date d'inscription jeudi 20 février 2003 Statut Membre Dernière intervention 5 novembre 2005
2 juil. 2005 à 15:01
honnetement je pense pas que ce soir possible de convertir ca...

les pointeurs n'éxistent pas en vb et les pointeurs sur fonction encore moins...



Cependant, il y a qd meme quelques équivalents :



typedef struct {

// definition de la structure

} nom_de_la_struct;



= en vb,



type nom_de_la_struct

' definition de la structure

end type



et pour les types :

char str[n] == str as String * n

int entier == entier as Integer

float nb == nb as Single



tu peux peut-etre essayer de simplifier tes structures si tu comptes
vraiment les utiliser en vb. Si tu compes faire des échanges entre un
prog C++ et un prog vb tu peut essayer de passer par un fichier (si t'a
pas besoin d'un truc temps reel) avec une structure sans pointeur que
tu copie dans ton fichier (ca je l'ai deja fait ca marche).
0
zgezou Messages postés 12 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 13 septembre 2005 1
4 juil. 2005 à 09:51
Merci remi1203, mais je ne peux pas modifier les structures car elles me sont données par Canon afin de piloter un appareil photo.

Zgezou
0
cs_remi1203 Messages postés 42 Date d'inscription jeudi 20 février 2003 Statut Membre Dernière intervention 5 novembre 2005
4 juil. 2005 à 13:18
Alors tu peux faire une dll en C qui gère touts les acces à l'appareil. Ensuite tu appelle cette dll à partir de ton prog vb

remi1203
0
Rejoignez-nous