Dll WIA insérer dans mon projet

cs_charliejo Messages postés 8 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 17 juillet 2009 - 16 juil. 2009 à 13:35
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 - 17 juil. 2009 à 16:05
Bonjour,
J'ai fait une petite application en visual basic 2008 express pour redimensionné des images qui utilise la dll wiaaut.dll. Je l'ai mis dans mes références de mon projet. Je crée une installation de mon appli. Si je l'installe sur un autre poste, il me met l'erreur "impossible de créer le composant ActiveX"....
Si je copie ma dll dans C:\WINDOWS\System32...cela fonctionne.
Mais je voudrais que mon installation copie automatiquement la dll dans le répertoire system32 directement.
Comment faire????
Svp répondez-moi, j'ai déjà passé 2 jours dessus.....

6 réponses

Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
16 juil. 2009 à 14:09
Bonjour,

Très mauvaise idée que de se servir d'activeX en .Net (Sauf quand on a vraiment pas le choix).

Dans ton cas, le redimentionnement d'image peut se faire via les fonction GDI du framework,

Via les espaces de noms System.Drawing et System.Drawing.Drawing2D qui contiennent toutes deux des fonction de dessin et de gestion des images. Il te faudra coder un peu pour y arriver mais je te conseil d'y jeter un coup d'oeuil ça vaut le coup.

Si tu veux rester avec une application qui va dépendre d'un composant ActiveX, il te faudra faire une solution de déployement (un setup ou installateur comme tu veux...)

++                                                                               
Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer. <
0
cs_charliejo Messages postés 8 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 17 juillet 2009
16 juil. 2009 à 14:21
Merci de ta réponse... mais pourquoi c'est une très mauvaise idée???
J'ai une dll qui fait ce dont j'ai besoin.... je veux pas réinventer la roue moi....
0
cs_charliejo Messages postés 8 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 17 juillet 2009
17 juil. 2009 à 14:51
Ok, bon pour la dll WIA... j'ai effectivement laissé tomber et j'utilise Drawing...
Par contre maintenant j'ai besoin de créer des raccourcis dans mon appli...et là j'utilise Wscript.Shell....et avec cette dll je retrouve le même problème....
Une autre façon de créer un raccourci???
MErci
0
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
17 juil. 2009 à 15:21
Salut,

Je vais t'expliquer la différence entre le .Net et le vb6 :

Le .Net dispose du Framework, ce framework n'est rien d'autre qu'un ensemble d'assembly contenant toutes les fonctions dont on a besoin (registre, système de fichier, API, GDI, Réseau, et j'en passe), en gros MS à développer pour nous des modules contenant les fonctions les plus utilisés (en gros des lib activeX intégrés si tu veux une image). Ces fonctions sont "natives", c'est à dire qu'une fois le framework installé sur le poste client, l'appication peut s'exécuter sans dépendances externes.

Lors ce que tu appele une API externe ou un activeX, il faut pour que ton programme puisse tourner sous n'importe quel pc, que cet activeX soit copier sur le post et enregistrer dans la base de registre et/ou que ta Lib soit copié dans le répertoire system/ou application. Ce qui nécéssite une procédure d'installation.

En gros une ActiveX en .Net pour faire ce que le framwork peut faire naturellement sans dépendances, c'est un poid mort, un boulet que tu va devoir trainer partout avec ton application. De plus, les activeX posent souvent des problèmes de compatibilité avec les systèmes 64bits, que l'on va retrouver de plus en plus sur les ordinateurs.

Voila pourquoi lors ce que l'on peut éviter les ActiveX en .Net on le fait, après bien sûr pour des grosses lib on à pas le choix, si le framework n'a pas de fonction native correspondante.

++

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_charliejo Messages postés 8 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 17 juillet 2009
17 juil. 2009 à 15:43
Merci beaucoup pour cette clarification... donc j'ai suivi le conseil pour le remdimensionnement d'image, j'utilise les fonctions du framework...
Par contre, pour le raccourci, cela ne semble pas possible avev le framework...donc comment je fais pour que cela tourne sur tous les postes ????
Je vous remercie
0
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
17 juil. 2009 à 16:05
Les raccourcis sont des fichiers externes à ton application, pour faire propre cela nécéssite un projet d'installation, sous Visual Studio .Net, ce type de projet de déploiement existe, il te suffit d'ajouter un nouveau projet de type déploiement à ta solution et de choisir le projet que tu veux en sortie, puis de configurer cet installateur pour qu'il te crée des raccourcis vers les emplacement voulus. Tu peux trouver des tutos sur google, mot clés : "Installation/Installateur/Déploiement vb.net"

La deuxième solution est de travailler avec les API, windows possède des API intégrés, si tu fais appel à celle-ci pour créer des raccourcis, cela ne gènera en rien pour la portabilité de ton application (mais cela ne garanti en rien la compatibilité avec les futurs OS d Microsoft). Tu trouveras surement des exemples de source en vb6 ici, il te reste à faire la traduction de l'API en .Net, ce qui pour une API de ce type ne doit pas être très complexe.

++

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
Rejoignez-nous