Bonjour,

Je recherche désespérément une solution à un problème que j'ai actuellement.
Je souhaite utiliser dans un script Python une méthode d'un fichier OCX que j'utilise déjà dans un projet C++. Ce fichier est bien enregistré dans la base de registre. Voici ce que je fais actuellement pour essayer d'utiliser la fonction :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
from win32com.client.gencache import EnsureModule
gencache.EnsureModule(CLID, 0, 1, 0)
m = Dispatch(PROGID)
# Jusque là, ça marche.
# Si j'affiche m, je retrouve bien la description de mon fichier OCX
# dans la chaine de représentation de m.
# Si je tape m.<TAB>, les fonctions que je souhaite utiliser apparaissent bien
m.maFonction(arg1, arg2, arg3, arg4, arg5)
# A ce moment là, j'ai une Défaillance Irrémédiable '-2147418113' (0x8000FFFF)
Actuellement, dans mon projet C++, la fonction est appelée de cette manière :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
m.maFonction((LPCTSTR) cstring1, (LPCTSTR) cstring2, FALSE, 1, 1);
Et en Python, je l'appelle comme ca :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
m.maFonction(string1, string2, False, 1, 1)
Donc au niveau des types de variables, il ne me semble pas qu'il y ai d'erreur. Quelqu'un aurait une idée dusoucis qu'il peut y avoir? J'ai essayé plein de facon différentes, avec comtypes,... mais toujours le même problème.
Merci d'avance

Yohann