Problème avec l'alias d'une DLL

cs_marco62118 Messages postés 176 Date d'inscription mercredi 7 avril 2004 Statut Membre Dernière intervention 1 avril 2013 - 9 déc. 2009 à 20:54
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 - 11 déc. 2009 à 21:49
bonjour
j'ai créé une dll avec "visual 2008 c++ express"
apparement la dll est créé je l'utilise dans un programe VB mais lors de la déclaration
"
Private Declare Sub VariationTableau Lib "VariationTableau.dll" Alias "VariationTableau" _
(PicBits2 As Byte, _
PicBits As Byte, _
ByVal nbElem As Long, _
ByVal Coeff As Double)
"
l'Alias ne doit pas être bon comment retrouver cet alias dans mon projet en C++

7 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
9 déc. 2009 à 21:23
Pas besoin d'alias vu que le nom de la fonction n'est pas un standard API.

ciao...
BruNews, MVP VC++
0
cs_marco62118 Messages postés 176 Date d'inscription mercredi 7 avril 2004 Statut Membre Dernière intervention 1 avril 2013 1
9 déc. 2009 à 21:38
merci pour cette prompte réponse
j'ai donc suprimé l'alias mais j'ai toujours le message "erreur 453 "point d'entrée VariationTableau d'une DLL introuvable dans VariationTableau.dll

donc si je comprends bien mon prog trouve bien la DLL mais ne trouve pas "le point d'entrée"?
0
cs_marco62118 Messages postés 176 Date d'inscription mercredi 7 avril 2004 Statut Membre Dernière intervention 1 avril 2013 1
9 déc. 2009 à 21:42
en fait j'ai mis ce code:
"
#define export __declspec (dllexport)

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

export void __stdcall VariationTableau(unsigned char *PicBits2, unsigned char *PicBits, long nbElem, double coeff);

void __stdcall VariationTableau(unsigned char *PicBits2, unsigned char *PicBits, long nbElem, double coeff)
{
long dec;

for(dec = 0;dec<nbElem;dec++)
{
PicBits[dec] = (unsigned char)(PicBits[dec])+(((unsigned char)(PicBits[dec])-(unsigned char)(PicBits2[dec])) * coeff);
}
}

"
simplement un fichier main.cpp puis j'ai compilé et récupéré la dll que j'ai copié dans le bon répertoire de mon prog VB

peut être n'est ce pas correct tout ça!
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
9 déc. 2009 à 21:58
Regarde avec depends.exe (c'est free download, cherche sur le web) si ta fonction est exportée par la dll.

ciao...
BruNews, MVP VC++
0

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

Posez votre question
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
10 déc. 2009 à 19:03
Il te manque un fichier .def avec le nom de tes fonctions (par défaut, VC++ décore les noms de fonctions en convention d'appel stdcall) :
LIBRARY VariationTableau
EXPORTS
  VariationTableau

---
VB.NET is good ... VB6 is better
0
cs_marco62118 Messages postés 176 Date d'inscription mercredi 7 avril 2004 Statut Membre Dernière intervention 1 avril 2013 1
11 déc. 2009 à 17:43
quelqu'un peut il me dire comment faire exactement, pas à pas pour créer cette dll et comment l'implémenter dans vb
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
11 déc. 2009 à 21:49
Il y en a des tas d'exemples de DLLs pour VB/VBA dans mes sources, quelques unes ici sur cppfrance, la plupart sur vbfrance.

ciao...
BruNews, MVP VC++
0
Rejoignez-nous