[WD 12 EXPRESS] Utilisation Assemblage .NET d'ESRI |
Sujet: [WD 12 EXPRESS] Utilisation Assemblage .NET d'ESRI par hgoethe sur 7/12/2009 11:25:19 Bonjour, Je suis nouveau dans l'environnement Windev, et je suis actuellement en train de tester l'utilisation d'assemblage .NET de la gamme de logiciel ESRI dans Windev. J'ai ajouté les assemblages dont j'ai besoin dans mon projet Windev via le menu "Atelier->.NET->Utiliser un assemblage .NET dans ce projet". Je peux voir dans la section "Assemblage .NET" de la fenêtre flottante "Projet" les classes ESRI que je compte manipuler. J'ai écrit une procédure derrière un bouton qui doit me permettre d'utiliser l'assemblage .NET pour me connecter à une source de données. Voici le code Windev :
La méthode OpenFromFile doit me renvoyer un objet de type WorkspaceClass, mais je reçois un message d'erreur sur la ligne "Info(MyWorkspaceEXPRESS:pathName)" qui doit simplement me donner le répertoire auquel l'objet est connecté qui est une chaîne. Voici l'erreur : Echec lors de la lecture du champ <PathName> du type <__ComObject> Je sais que mon objet MyFactoryEXPRESS est bien alloué, car je peux utiliser une méthode de cet objet qui teste si le répertoire que je vais utiliser dans la méthode OpenFromFile est correct. Mais on dirait que lorsque j'utilise la méthode OpenFromFile, l'objet renvoyé dans la variable MyWorkspaceEXPRESS n'est pas du bon type. Voici une version du code en VB.NET qui fonctionne très bien :
Y a-t-il une manière particulière d'initialiser un objet dans windev à partir de l'appel d'une méthode d'un autre objet (comme c'est le cas ici) ? Je ne peux pas utiliser l'instruction "allouer un" pour mon objet MyWorkspaceEXPRESS parce que le constructeur de la classe WorkspaceClass est protégé. L'objet doit être dérivé d'une autre classe, en appelant une méthode de celle-ci. Existe-t-il une méthode de casting d'objet en Windev ? Merci pour toute l'aide que vous pourrez m'apporter. |