Vb.net Bibliothéque de classe
Résolu
Creutzou
Messages postés
550
Date d'inscription
Statut
Membre
Dernière intervention
-
Creutzou Messages postés 550 Date d'inscription Statut Membre Dernière intervention -
Creutzou Messages postés 550 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Vb.net Bibliothéque de classe
- Google photo bibliothèque - Accueil - Photo
- Ce fichier contient l'historique des livres empruntés à la bibliothèque. combien de titres différents contient-il ? ✓ - Forum Excel
- Logiciel de classement de photos gratuit - Guide
- Bibliothèque dynamique aacs - Forum Windows
- Bibliothèque ✓ - Forum Windows 10
19 réponses
Bonjour,
Tu a ajouter la dll dans les références ?
Tu l'a inscrite dans le régistre ?
A+
Toute la connaissance du monde ne peu tenir dans une seul tête (moi)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Ça doit se passer sur le forum pour que tous puisse y participer ou en profiter.
Tu a ajouter la dll dans les références ?
Tu l'a inscrite dans le régistre ?
A+
Toute la connaissance du monde ne peu tenir dans une seul tête (moi)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Ça doit se passer sur le forum pour que tous puisse y participer ou en profiter.
Oui, je les inscrite dans "com interop" et je l'ai bien ajouté en référence dans Access. Puis j'ai fermé et réouvert la base.
J'ai suivis le mini tutoriel du msdn de Microsoft pour exporter des dll dot net vers du vba
Tout vient à point à qui sait attendre
J'ai suivis le mini tutoriel du msdn de Microsoft pour exporter des dll dot net vers du vba
Tout vient à point à qui sait attendre
Tant que... "Dim export as new madll.maclasse" ne fonctionnera pas c'est inutile d'aller plus loin.
1°) l'extention de la dll doit être Madll.dll
2°) Y faut l'inscrire au registre Windows avec RegSVR32
3°) Donc en faisant quelque chose du genre :
dim export as madll.maclasse
export.mafonction(variable)
Y manque Export = new madll.maclasse
Toute la connaissance du monde ne peu tenir dans une seul tête (moi)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Ça doit se passer sur le forum pour que tous puisse y participer ou en profiter.
1°) l'extention de la dll doit être Madll.dll
2°) Y faut l'inscrire au registre Windows avec RegSVR32
3°) Donc en faisant quelque chose du genre :
dim export as madll.maclasse
export.mafonction(variable)
Y manque Export = new madll.maclasse
Toute la connaissance du monde ne peu tenir dans une seul tête (moi)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Ça doit se passer sur le forum pour que tous puisse y participer ou en profiter.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
a voir
Et si tu ne veux pas avoir de problème, met ta dll dans System32
Toute la connaissance du monde ne peu tenir dans une seul tête (moi)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Ça doit se passer sur le forum pour que tous puisse y participer ou en profiter.
Et si tu ne veux pas avoir de problème, met ta dll dans System32
Toute la connaissance du monde ne peu tenir dans une seul tête (moi)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Ça doit se passer sur le forum pour que tous puisse y participer ou en profiter.
Alors alors, j'ai tenté d'utiliser regsvr32 mais il me dit qu'il n'y a pas de point d'entrée dans DllRegisterServer.
J'ai retenté l'opération en la mettant de le system32, puis dans sysWow64 mais rien n'y fait. Est ce ma dll qui est mal construite?
J'ai retenté l'opération en la mettant de le system32, puis dans sysWow64 mais rien n'y fait. Est ce ma dll qui est mal construite?
Option Explicit On <ComClass(PSE.ClassId, PSE.InterfaceId, PSE.EventsId)> Public Class PSE Public Const ClassId As String = "F78B9B01-7553-4a3a-9A44-A4778649974D" Public Const InterfaceId As String = "F9CB47EC-1A2E-4a97-87BD-9FAD12D124ED" Public Const EventsId As String = "BDB03602-DB50-46fe-A722-788703A1A16A" Private Sub New() MyBase.New() End Sub Public Function envoi(ByVal content as string) as string Dim reponse as string Dim connection As New refweb.webservice reponse = connection.fonctionduwebservice(content) Return reponse End Function End Class
Tu a recopier un code que tu à trouvé mais tu ne l'adapte pas à tes configurations.
Quel bibliothèque(s) tu a ajouter à ta classe
Et tu n'a certainement pas pu le compiler.
Faire une dll c'est pas "y a qu'a"
quel nom (complet) a ta "dll"
Toute la connaissance du monde ne peu tenir dans une seul tête (moi)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Ça doit se passer sur le forum pour que tous puisse y participer ou en profiter.
Quel bibliothèque(s) tu a ajouter à ta classe
Et tu n'a certainement pas pu le compiler.
Faire une dll c'est pas "y a qu'a"
quel nom (complet) a ta "dll"
Toute la connaissance du monde ne peu tenir dans une seul tête (moi)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Ça doit se passer sur le forum pour que tous puisse y participer ou en profiter.
ma dll s'appelle exactement "madll.dll"
d'ailleurs je ne sais même pas si c'est une dll dont j'ai besoin.
Je veux juste pouvoir utiliser un bout de code vb.net dans une application vba
Tout vient à point à qui sait attendre
d'ailleurs je ne sais même pas si c'est une dll dont j'ai besoin.
Je veux juste pouvoir utiliser un bout de code vb.net dans une application vba
Tout vient à point à qui sait attendre
Et quel est le bout de code que tu veux employer en VBA ?
Pas celui plus haut, ça n'ira pas.
Et que veux-tu faire exactement ?
Pas celui plus haut, ça n'ira pas.
Et que veux-tu faire exactement ?
Alors je dois faire interagir ma base Access, avec un web service.
Avec Dotnet, j'ai juste à ajouter la référence du service, et tout marche nickel.
Seulement avec Access, je ne peux pas ajouter cette référence.
Mon idée était donc de faire une fonction en vb.net, et de pouvoir l'appeler depuis ma base. Après quelque recherche ( qui sont restées très floues) j'ai cru comprendre que de faire une dll serait la solution la plus simple. Cependant, pour exporter une dll vb.net en vba, il faut la rendre visible COM ( toujours d'après ce que j'ai compris).
Maitrisant assez mal la POO, je pensais juste que ma classe était mal construite, ou mon objet mal instancier.
Tout vient à point à qui sait attendre
Avec Dotnet, j'ai juste à ajouter la référence du service, et tout marche nickel.
Seulement avec Access, je ne peux pas ajouter cette référence.
Mon idée était donc de faire une fonction en vb.net, et de pouvoir l'appeler depuis ma base. Après quelque recherche ( qui sont restées très floues) j'ai cru comprendre que de faire une dll serait la solution la plus simple. Cependant, pour exporter une dll vb.net en vba, il faut la rendre visible COM ( toujours d'après ce que j'ai compris).
Maitrisant assez mal la POO, je pensais juste que ma classe était mal construite, ou mon objet mal instancier.
Tout vient à point à qui sait attendre
J'ai trouvé une solution temporaire, mais qui ne me satisfait qu'a moiter en attendant d'avancer de l'autre coté.
J'ai créer une application console qui joue le rôle de passerelle., en lui transmettant les données en paramètre.
Lermite222, connais tu une solution plus adapté que faire une dll qui ne tien pas la route ?
Sinon le bout de code que je voudrais utiliser est :
Ou Export est une référence au web service en question.
Tout vient à point à qui sait attendre
J'ai créer une application console qui joue le rôle de passerelle., en lui transmettant les données en paramètre.
Lermite222, connais tu une solution plus adapté que faire une dll qui ne tien pas la route ?
Sinon le bout de code que je voudrais utiliser est :
Public Function envoi(ByVal content) Dim response Dim connection As New Export.ServicesSoapClient reponse = connection.ImportVehicles(content) Return response End Function
Ou Export est une référence au web service en question.
Tout vient à point à qui sait attendre
Re,
Je ne connaît pas ta connexion, mais en VBA il est possible d'employer un module de classe qui est l'équivalent d'une dll mais propre a l'appli en cour.
Si ta fonction (avec ses paramètres) fonctionne, tu peu les implémenter dans ce genre de module et ensuite y faire référence dans ton code VBA.
Quand tu veux ajouter la bibliothèque ServicesSoapClient quel est la réponse ?
Je ne connaît pas ta connexion, mais en VBA il est possible d'employer un module de classe qui est l'équivalent d'une dll mais propre a l'appli en cour.
Si ta fonction (avec ses paramètres) fonctionne, tu peu les implémenter dans ce genre de module et ensuite y faire référence dans ton code VBA.
Quand tu veux ajouter la bibliothèque ServicesSoapClient quel est la réponse ?
Je vais explorer la piste des module de classe.
Sinon je n'arrive pas à ajouter la Bibliothèque ServicesSoapClient dans access.
Sinon je n'arrive pas à ajouter la Bibliothèque ServicesSoapClient dans access.
Je ne sais pas comment l'expliquer, mais dans Visual Studio Express, j'ai ajouté une référence web dans mon projet ( en rentrant l'url du web service).
Donc ServicesSoapClient provient de cette référence.
Or dans Access, je n'ai la possibilité d'ajouter uniquement des référence "local".
Ou alors je suis pas très dégourdis ( ce qui est fort possible aussi ;)
Tout vient à point à qui sait attendre
Donc ServicesSoapClient provient de cette référence.
Or dans Access, je n'ai la possibilité d'ajouter uniquement des référence "local".
Ou alors je suis pas très dégourdis ( ce qui est fort possible aussi ;)
Tout vient à point à qui sait attendre
OK, je commence à comprendre, explique EXACTEMENT ce que tu veux transférer au moyen de WebService.
Normalement ce n'est que du contenu XLM ? ce qui n'est pas fort compatible avec Access.
Si un autre intervenant comprend mieux, qu'il intervienne sans hésitation.
A+
Normalement ce n'est que du contenu XLM ? ce qui n'est pas fort compatible avec Access.
Si un autre intervenant comprend mieux, qu'il intervienne sans hésitation.
A+
Je transfert des données contenue dans la base.
en schématisant, J'ai une table
et je veux envoyer ces données au web service.
Le web service attends du xml avec une enveloppe SOAP (c'est à cause de cela que je m'etais penché sur DOT NET, car avec l'ajout de référence, l'enveloppe etc... ce faisait toute seul).
je crée une variable String ( que nous appellerons Flux).J'ouvre un record set et je construit mon flux xml d'une manière peut être barbare.
Puis je transmet la variable flux à la passerelle ( qui est justement en cours de construction).
Je fais peut être une usine à gaz, mais je n'ai trouvé que ca comme méthode.
Tout vient à point à qui sait attendre
en schématisant, J'ai une table
voiture(ID,marque,model,année,immatriculation)
et je veux envoyer ces données au web service.
Le web service attends du xml avec une enveloppe SOAP (c'est à cause de cela que je m'etais penché sur DOT NET, car avec l'ajout de référence, l'enveloppe etc... ce faisait toute seul).
je crée une variable String ( que nous appellerons Flux).J'ouvre un record set et je construit mon flux xml d'une manière peut être barbare.
flux ="<racine>"& vbCrLf rst104.MoveFirst Do Until rst104.EOF flux = flux & "<vehicle>" & vbCrLf & _ "<id>" & Idvoiture & "</id>" & vbCrLf & _ "<make>" & rst104!marque & "</make>" & vbCrLf & _ "<model>" & rst104!Modéle & "</model>" & vbCrLf & _ "<type>" & rst104!Genre & "</type>" & vbCrLf & _ "<body>" & rst104!Carrosserie & "</body>" & vbCrLf & _ "<energy>" & rst104!Energie & "</energy>" & vbCrLf & _ "<kilometer>" & rst104!kms & "</kilometer>" & vbCrLf & _ "<plate>" & rst104!Immat & "</plate>" & vbCrLf & _ "<year>" & rst104!datemec & "</year>" & vbCrLf flux = flux & "</vehicle>" rst104.MoveNext Loop
Puis je transmet la variable flux à la passerelle ( qui est justement en cours de construction).
Je fais peut être une usine à gaz, mais je n'ai trouvé que ca comme méthode.
Tout vient à point à qui sait attendre
Désolé, mais pour le xlm je suis nul, vaudrait mieux que tu crée un nouveau topic en expliquant tout ce que tu vient de dire parce qu'au départ... C'était pas clair du tout.
A+
A+
dac, je vais recommencer depuis le début en demandant un coup de main sur la marche à suivre, car j'ai peur de faire une ENORME usine à gaz.
Une chose est sûre, je te remercie grandement du temps passé sur mon cas !
édit: La suite des événements c'est par ici
Tout vient à point à qui sait attendre
Une chose est sûre, je te remercie grandement du temps passé sur mon cas !
édit: La suite des événements c'est par ici
Tout vient à point à qui sait attendre