Accueil > Forum > > > > user control .net -> activex
user control .net -> activex
mercredi 21 septembre 2005 à 16:53:12 |
user control .net -> activex

Nephilim
|
Salut à tous,
Je me permets de reposter la question, le pauvre petit gars qui l'avait posée a du passer innaperçu dans le grand trou du mois de mai et n'a jamais eu de réponse :-/
Problématique :
modifier un controle utilisateur .net de façon à le rendre accessible comme tout bon vieux activex.
But :
Réutiliser des controles .net évolués dans des solutions ne supportant pas encore ces controles, vb6 par exemple (c'était le problème d'origine), ou Allfusion Plex pour ma part.
Cause :
L'architecture COM étant progressivement abandonnée par micro$oft, il n'est plus possible (à priori) de créer directement des composants ActiveX par VB.Net. Les nouveaux composants, appelés "controles windows" (projet de type "Bibliothèque de contrôles windows", fonctionnent de façon assez similaire mais ne sont plus visibles en tant que contrôle activex, on ne peut donc les réutiliser que dans des solutions .net ...
C'est un peu chiant, pour ma part j'ai plus de 2000 lignes de code en VB.NET dans mon composant, et ça me saoulerait un peu de devoir les repasser en VB6, sans compter le fait qu'un paquet de librairies risquent de poser problème (adodb, adomd, axowc10 compilé "maison" ...).
Solution:
A priori il exist(ait) une méthode sur la Beta1 vs.net qui permettait de mapper des fonctions standard COM ("ComRegisterFunction" etc.) de façon à simuler le comportement d'un activex standard. D'après ce que j'ai lu, cette méthode ne fonctionnait plus à partir de la Beta2 (krosoft abandonnant le support autour de COM), mais un illuminé s'est lancé dans l'aventure tout de même. Au final ça donne les méthodologies suivantes :
http://www.codeproject.com/cs/miscctrl/exposingdotnetcontrols.asp
http://www.codeproject.com/vb/net/serviced_components.asp
http://www.codeproject.com/vb/net/COM_Interop.asp
J'ai essayé de mixer un peu des trois, dans tous les sens, depuis deux jours, mais rien à faire ... si quelqu'un a déjà tenté et réussi avec succès à déclarer un controle utilisateur .net en le faisant passer pour un activex, je suis preneur ! Si il existe d'autres façons de faire pour réutiliser ces composants je suis preneur de conseils aussi, j'ai l'impression d'être dans une impasse par moments ...
Désolé pour la longueur.
Désolé pour l'imprécision.
Désolé pour l'intérêt tout relatif que représente le sujet.
Désolé en fait ... mais au secouuuurs :)
Tonio
|
|
mercredi 21 septembre 2005 à 17:54:53 |
Re : user control .net -> activex
|
mercredi 21 septembre 2005 à 18:13:10 |
Re : user control .net -> activex

Nephilim
|
Nope, je n'étais pas tombé là dessus dans mes recherches, merci pour le lien !
Je vais tout repasser au crible et voir ce que j'ai pu oublier ...
Tonio
|
|
mercredi 21 septembre 2005 à 18:14:16 |
Re : user control .net -> activex

Nephilim
|
Par contre la lecture de posts antérieurs ne m'encourage pas beaucoup, à priori ceux qui ont essayé s'y sont cassé les dents ... affaire à suivre :)
Tonio
|
|
mercredi 21 septembre 2005 à 19:02:04 |
Re : user control .net -> activex

cboulas
|
Salut, ce n'est qu'une idée, mais il faudrait peut-être intégrer une partie des DLL du framework à votre projet, puis y faire appel au lancement du projet, qui celui-ci s'en servira pour loader le contrôle
Chris... Web : Firstruner - eMail : Support&
|
|
jeudi 22 septembre 2005 à 10:34:32 |
Re : user control .net -> activex

Nephilim
|
Salut Chris,
La supposition est parfaitement judicieuse ;)
Mais à priori il est plus "propre" d'installer tout bêtement le framework .net sur la machine qui exécute l'appli. Pour moi ça ne pose pas de problème de déploiement, c'est une appli distribuée par Citrix et il n'y a besoin d'installer qu'une machine : le serveur.
En plus je n'en suis pas là, l'objectif pour l'instant est de faire tourner un contrôle avec une bête propriété, juste pour prouver que c'est possible ... je verrai après pour faire tourner le -vrai- module :)
Tonio
|
|
jeudi 22 septembre 2005 à 11:59:08 |
Re : user control .net -> activex

Nephilim
|
Bon, je laisse tomber, c'est l'enfer ...
J'ai appliqué tout ce que j'ai pu trouver de pertinent dans le lien :
http://msdn.microsoft.com/library/FRE/cpguide/html/cpconexposingnetframeworkcomponentstocom.asp?frame=true
Et un peu plus en fait en prenant en compte ce que j'avais déjà trouvé là :
http://www.codeproject.com/cs/miscctrl/exposingdotnetcontrols.asp
http://www.codeproject.com/vb/net/serviced_components.asp
http://www.codeproject.com/vb/net/COM_Interop.asp
Mais ça ne fonctionne toujours pas :( J'ai bien une assembly "strong named" et chargée dans le cache global, des méthodes exposées comme il faut, des fonctions standard d'enregistrement COM, une interface reconnue par le système et déclarée dans la base de registres, et même la librairie de types est accessible, mais toujours pas d'activex visible dans les listes "officielles" de controles COM ... je crois que je vais devoir me fader la conversion en VB6 :(
Ce qui est désolant c'est que finalement, toutes les méthodes "magiques" décrites par des gars qui annoncent être parvenus ("tout simplement parceque .net c'est génial") à charger des composants s'avèrent incomplètes. Ils oublient la plupart des déclarations d'interopérabilité, le plus dur donc, et je ne vois pas comment ils peuvent prétendre que leur code marche, à tout les coups ils ne l'ont même pas testé :-/
Ce qui est encore plus désolant c'est l'insondable capacité de microsoft à abandonner des technos en cours de route sans assurer la compatibilité de ce qui suit. Professionnellement c'est moyen ...
Tonio
escrocs
|
|
Cette discussion est classée dans : net, vb, activex, désolé, façon
Répondre à ce message
Sujets en rapport avec ce message
ActiveX et VB.net?? [ par visualresine ]
Bonjour, C'est peut être une question stupide mais je suis un peu perdu dans la jungle de toutes les technologies.... Es qu'il est possible de devel
Comment créer une DLL non ActiveX en VB.NET ? [ par FRSAGEM ]
Bonjour à tous,Bonjour à tous,Nous avons un outil de développement (imposé) qui 'accepte que des DLL non ActiveX (développées en C pour ce qui est de
Créer un composant ActiveX en VB.NET... [ par flayn ]
Bonjour à tous...Voila, je voudrais pouvoir créer un activex ou une dll en .net que je pourrais utiliser dans un autre RAD (style vba de word) qui n'e
Peut on créer des composants ActiveX sous vb.net ? Prévenir les modérateurs [ par lcprog ]
Salut, j'ai besoin de développer une dll com pour plusieurs clients. Ces derniers comptent l'utiliser sous vb6, delphi et visual c++ 6.0 Cette dll do
ActiveX en VB.NET [ par panpan ]
Et les activeX en VB.NET??Comment en créer. Il y a plus le "Nouveau projet" -> "Contôle activeX" de vb 6.0Merci d'avance.
creation d'un controle activex avec vb.net [ par ibmnoussa ]
salutsvp je veux creer un composant activex avec vb.net .ce composant a la forme d'un emploi de temps (un peu comm datagrid)svp je veux qu'on m'aide v
Vb.Net et Word - Modification de documents [ par CecileH ]
Bonjour,Je souhaite modifier un document Word par une appli. en VB.Net. J'ai besoin de changer le logo sur la première page ainsi que le bas de page d
Enregistrement dans une base SQL avec VB.Net [ par poilusduboux ]
Bonjour à tous<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /??
VB.net / Comment modifier fichier text avec instruction VB [ par bovix ]
Bonjour à tous,Je commence à m'initiner dans la programmation en VB avec VB.net, et je veux réaliser un petit programme pour mes parents qui puissent
Tutorial Net DirectX9 [ par bizzard4 ]
Bonjour !Je vien de me lancer dans la programmation VB NET et DirectX. J'ai cherché des tutorials sur internet mais j'en trouve juste en C# et il m'es
Livres en rapport
|
Derniers Blogs
XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)[HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE) par Gio
Je m'y prends un peu tard je sais, mais bon je suis développeur web et donc hyper fainéant ! Toujours dans le cadre des technologies émergentes, ici HTML5, parce qu'on aime HTML5 chez Wyg , nous seront présent, le vieux ( Aurélien V.) et moi, pour pr...
Cliquez pour lire la suite de l'article par Gio [WP7] DYNAMICALLY CHANGE STARTUP PAGE[WP7] DYNAMICALLY CHANGE STARTUP PAGE par KooKiz
Let's say that you want to allow the user to customize the startup page of your application. You can easily change the startup page by editing the 'NavigationPage' attribute in the manifest file. But the manifest cannot be modified once the applicatio...
Cliquez pour lire la suite de l'article par KooKiz
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|