Bonsoir,

J'essaie d'utiliser la JCL pour utiliser une classe c# en .net.
J'ai trouvé du code delphi qui permet de le faire mais le problème c'est que je n'arrive pas à traduire une ligne.
Je bloque sur le code suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
System::DelphiInterface<IObjectHandle> obj;
//IObjectHandle *obj;
int result = (IObjectHandle *)IUnknown(AppDomain->DefaultInterface->CreateInstanceFrom(
ExtractFilePath(Application->ExeName)+"lib.dll", "maclassecsharp", &obj));
A l'origine, le code devait être le suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
//Create an instance of the dot Net class
obj := IUnknown(AppDomain.CreateInstanceFrom(
ADotNetAssemblyUnc, ADotNetClassName)) as IOBjectHandle;
Et l'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
[BCC32 Erreur] Unit1.cpp(166): E2357 Référence initialisée avec 'IObjectHandle * *', nécessite lvalue de type '_di__ObjectHandle'
[BCC32 Erreur] Unit1.cpp(166): E2342 Mauvaise correspondance de type dans le paramètre '__CreateInstanceFrom_result' ('_di__ObjectHandle &' désiré, 'IObjectHandle * *' obtenu)
Si je ne met pas '&' devant obj, j'obtiens :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
[BCC32 Erreur] Unit1.cpp(166): E2342 Mauvaise correspondance de type dans le paramètre '__CreateInstanceFrom_result' ('_di__ObjectHandle &' désiré, '_di_IObjectHandle' obtenu)
Quelqu'un peut m'aider ?

Merci