#1 Wed 06 December 2006 21:24
Plantage d'ArcGIS depuis du code VB
Bonjour,
J'essaie de créer une appli en VB qui fait appel à ArcGIS à l'intérieur du processus. Pour tout ce qui est manipulation, pas de problème, mais dès que je crée un objet dans ArcGIS via le programme, rien ne va plus, le logiciel (d'ESRI, ArcGIS donc, pas le mien) plante, m'affiche (ou pas, ça dépend de son 'humeur') un joli message d'erreur et s'arrête.
La méthode précise qui est problématique est IMap.AddLayer.
Le même code (à l'exception du remplacement de ma variable document par ThisDocument) en VBA fonctionne très bien. (D'ailleurs, à cette étape, c'est pour une grande partie du c/c d'EDN) J'ai bien intégré dans mon appli le LicenseInitializer fourni par ESRI, ArcObject est donc bien initialisé.
J'aimerais que vous apportiez une réponse à ce problème.
Jérôme Cuinet
L'avantage de la Chine, c'est que le soleil se couche plus tard !
Hors ligne
#2 Thu 07 December 2006 08:59
- janyv
- Participant assidu
- Lieu: Montreuil, France
- Date d'inscription: 8 Feb 2006
- Messages: 356
Re: Plantage d'ArcGIS depuis du code VB
Bonjour,
Tu as mis un ocx mapcontrol dans ta form VB ?
yvan.
Si tu ne sais pas demande, si tu sais partage
Hors ligne
#4 Thu 07 December 2006 17:34
- janyv
- Participant assidu
- Lieu: Montreuil, France
- Date d'inscription: 8 Feb 2006
- Messages: 356
Re: Plantage d'ArcGIS depuis du code VB
parce que si tu utilises la méthode AddLayer c'est que tu veux ajouter une couche à une Map... et dans VB je ne vois pas d'autres moyen qu'un OCX MapControl pour gérer les couches...
yvan.
Si tu ne sais pas demande, si tu sais partage
Hors ligne
#5 Thu 07 December 2006 17:56
Re: Plantage d'ArcGIS depuis du code VB
Je ne connais pas le mapcontrol, je ne connais pas ses possibilités. Cela semble être un simple viewer.
J'ajoute des couches à une map car j'ouvre un nouveau document ArcGIS, et je veux manipuler mes couches, créer des jointures, les sélectionner et sortir un résumé des sélections... Je ne veux pas simplement les visualiser pour les admirer. Est-ce que c'est possible avec ce Mapcontrol ?
Jérôme Cuinet
L'avantage de la Chine, c'est que le soleil se couche plus tard !
Hors ligne
#6 Thu 07 December 2006 18:04
- janyv
- Participant assidu
- Lieu: Montreuil, France
- Date d'inscription: 8 Feb 2006
- Messages: 356
Re: Plantage d'ArcGIS depuis du code VB
ben oui, il faut commencer par là...
le mapcontrol est l'équivalent du mode données avec ArcMap : il implémente l'interface IMap.
va voir sur http://support.esri.com, ou edn.esri.com il y a plein d'exemples...
yvan.
Dernière modification par janyv (Thu 07 December 2006 18:05)
Si tu ne sais pas demande, si tu sais partage
Hors ligne
#7 Fri 08 December 2006 10:24
- Olivier De LA POMMERAYE
- Invité
Re: Plantage d'ArcGIS depuis du code VB
Bonjour,
Vous avez deux approches pour utiliser ArcGIS avec VB :
1 - vous souhaitez interfacer ArcMap (ou ArcCatalog) et aller construire une DLL ActiveX qui va vous permettre de faire interagir l'environnement ArcGIS avec votre application, vous bénéficiez alors de
toutes la puissance et surtout des IHM (Interface Homme Machine) d'ArcMap
2 - vous souhaitez apporter des fonctionnalités SIG à une application autonome qui s'appuiera sur les composants internes d'ArcGIS appelés ArcObjects (et sur la licence installé). Dans ce cas vous pouvez soit utiliser les bibliothèques ArcObjects sans interface pour le cas où vous n'auriez que des manipulations de données sans interaction graphique avec l'utilisateur, soit via le contrôle MapControl qui vous permet une interaction graphique sur les données géographiques avec l'utilisateur en plus de toutes les fonctionnalités d'ArcObjects
Ces deux approches sont très différentes, la première étant selon moi la plus simple et nécessitant le moins de travail.
Bonne journée,
Olivier de LA POMMERAYE
GeoSYS
#8 Fri 08 December 2006 20:19
Re: Plantage d'ArcGIS depuis du code VB
Mais avec la première, ça plante, d'où le sujet de discussion (qui n'est pas une présentation du module MapObject, sauf si c'est la seule solution qui me permette de faire ce que je veux).
Jérôme Cuinet
L'avantage de la Chine, c'est que le soleil se couche plus tard !
Hors ligne
#9 Sat 09 December 2006 17:46
Re: Plantage d'ArcGIS depuis du code VB
Ça marche vraiment bien cette interface, merci d'avoir mis le doigt dessus. Je n'ai plus de problèmes, c'est super.
Jérôme Cuinet
L'avantage de la Chine, c'est que le soleil se couche plus tard !
Hors ligne