alexmagnus
Messages postés6Date d'inscriptiondimanche 23 novembre 2003StatutMembreDernière intervention15 juin 2006
-
18 avril 2006 à 17:39
rvblog
Messages postés792Date d'inscriptionvendredi 4 mars 2005StatutMembreDernière intervention12 juin 2012
-
23 avril 2006 à 01:13
Bonjour,
j'ai actuellement un petit souci de fichier DLL. Voici mon bout de code :
dans l'Option Explicit :
Private Declare Function BMP2JPGAvecRedimpourVBFrance Lib "BMP2JPG" (ByVal a As String, ByVal b As String, ByVal c As Integer, ByVal xdim As Integer, ByVal ydim As Integer) As Integer
Dim Retour As Integer
Dim fichier, objetsystem
dans mon bouton :
rst.Open "SELECT * FROM Film WHERE Titre='" & TXTVersSQL(TxtTitre.Text) & "' ;", bd, adOpenDynamic, adLockOptimistic
SavePicture ImgFilm.Picture, App.path & "\Images\temp.bmp"
Retour = BMP2JPGAvecRedimpourVBFrance(App.path & "\Images\temp.bmp", App.path & "Images" & rst![idFilm] & ".jpg", 100, ImgFilm.Width, ImgFilm.Height) 'qualité réglable de 1 à 100(ici 50)
Set objetsystem = CreateObject("Scripting.FileSystemObject")
fichier = objetsystem.deletefile(App.path & "\Images\temp.bmp")
Set objetsystem = Nothing
Set fichier = Nothing
rst.Close
Je n'ai recopié que les choses qui me paraisse essentielles.
Mon code reprend donc une DLL de VBFrance, qui transforme les bitmap en jpg.
La ou le bas blesse, c'est qu'a l'execution VB me dit qu'il y a erreur 53, que la DLL est introuvable... or elle se trouve dans le meme dossier que l'application... Je ne comprends pas pourquoi, et c'est pourquoi je me tourne vers vous...
merci d'avance !
alexmagnus
Messages postés6Date d'inscriptiondimanche 23 novembre 2003StatutMembreDernière intervention15 juin 2006 18 avril 2006 à 18:13
mon soucis vient du fait que dans un autre projet, assez similaire, cette meme DLL ne posait aucun probleme.
la DLL est compilée en VC++, ou quelque chose du genre, je crois.
etant deja utilisée par l'autre application qui tourne parfaitement, elle doit etre au pire deja enregistree dans la base de registres, non ?
alexmagnus
Messages postés6Date d'inscriptiondimanche 23 novembre 2003StatutMembreDernière intervention15 juin 2006 20 avril 2006 à 13:12
et bien, cette autre source est un programme de moi egalement, utilisant les memes lignes de commande pour ce qui est de l'appel à cette DLL. Certes, je l'ai fait il y a un an, mais je ne crois pas que ma memoire me fasse defaut, et que j'ai oublié de faire quelque chose.
Pour activer une DLL et la lier à son appli, y a t-il autre chose à faire que la definir dans la partie option explicit de la form ? Dans projet/references, peut-etre ?
vraiment, je ne vois pas pourquoi le nouveau programme ne trouve pas ce fichier. Meme compilé, ca ne marche pas, alors que le fichier DLL est dans le meme dossier...
vérifies le nom exact de la dll, quand je la télécharge à partir de ce site, elle s'appelle bmp2jpg_BMP2JPG.dll.
Sinon, VB devrait la trouver dans le répertoire de l'exe (ou aussi dans le rep courant, dans le dossier système, dans le dossier windows, ou dans un dossier spécifié dans la variable d'environnement Path). Alors, pour être sûr, spécifies lui le chemin d'accès complet dans le paramètre lib de la déclaration.
Enfin, pour compléter l'aide que j'essaie de te fournir, il n'y a rien d'autre à faire, pour utiliser une dll, que ce que tu as déjà fait, et, éventuellement, vérifier l'accès à toutes ses dépendances (si elle a des dépendances). La registration auprès de Windows et l'ajout de références au projet VB ne sont nécessaires qu'aux objets COM.
à+
rvblogn<SUP>
</SUP><SUP>Je veux ton bien... et je l'aurais... mais jamais avant la page 4
</SUP>