2008-09-09 6 views
1

J'écris une application basée sur une boîte de dialogue VC++ MFC qui nécessite l'incorporation de Microsoft MapPoint. Pour ce faire, j'utilise MS VC++ .NET 2003 et MapPoint Europe 2006 pour ce faire, mais j'ai des problèmes car lorsque je sélectionne "Insérer contrôle ActiveX", aucun contrôle MapPoint n'apparaît dans la liste des options. J'ai essayé manuellement en enregistrant mappointcontrol.ocx avec regsvr32 qui semble réussir mais toujours le contrôle n'apparaît pas sur la liste. Est-ce que quelqu'un peut suggérer ce que je fais mal ici, et toutes les solutions possibles.Problème de boîte de dialogue de contrôle VC++ et MapPoint OCX

Merci

Ian

Répondre

1

Avez-vous essayé d'utiliser le conteneur de test de contrôle ActiveX? Est-ce dans la liste des contrôles? Pourquoi ne pas utiliser le bouton de registre dans le conteneur de test?

Vérifiez également le registre pour voir s'il est enregistré. Vous devriez avoir une entrée dans HKEY-CLASSES-ROOT \ controlName qui a un élément CLSID qui pointe vers un UUID. Cet UUID doit également être dans HKEY-CLASSES-ROOT \ CLSID \ uuid et avoir une entrée LocalServer32 qui pointe vers la DLL et ProgID qui pointe vers controlName.

1

J'ai maintenant le contrôle Mappoint qui fonctionne mais d'une manière légèrement différente. Le contrôle apparaît sur la liste des contrôles que le conteneur de test peut utiliser. J'ai essayé de le réenregistrer et de l'annuler, mais il n'apparaît toujours pas dans la liste des contrôles lorsque j'essaie un "Insérer un contrôle ActiveX". Toutefois, si j'utilise "Ajouter/Supprimer des éléments de la boîte à outils", je peux l'ajouter à la boîte à outils, puis la faire glisser dans mon application où elle fonctionne correctement. Je ne suis pas sûr de savoir pourquoi cette méthode fonctionne mais elle le fait et je peux continuer mon codage.

Un grand merci pour votre aide.

Questions connexes