Mon problème c'est ce message : Can't find DLL entry point

Résolu
Thomas Anderson Messages postés 8 Date d'inscription lundi 17 janvier 2005 Statut Membre Dernière intervention 1 février 2005 - 1 févr. 2005 à 11:24
Thomas Anderson Messages postés 8 Date d'inscription lundi 17 janvier 2005 Statut Membre Dernière intervention 1 février 2005 - 1 févr. 2005 à 16:33
J'ai créé et compilé une DLL nommée :
- MyCommonSubs
Contient une classe MySubs qui elle-même contient une Méthode nommée ADTT :


'-------------------------------------------------------------------------------------
'Teste l'augmentation du temps ADTT = Augmentation Diminution Test du Temps
'[ex: ValeurTest = 67, ValeurMax = 60, ValeurTest = 7, Renvois 1]
Public Sub ADTT(ByRef ValeurTest As Variant, _
ByRef ValeurRetour As Variant, _
ByVal ValeurMax As Variant)
Dim VT, VR, VM As Integer 'Définit des variables plus courtes
VT = ValeurTest 'Copie les variables
VR = ValeurRetour 'Copie les variables
VM = ValeurMax 'Copie les variables
If VT >= VM Then
VR = VR + Int(VT / VM)
VT = VT - Int(VT / VM) * VM
ElseIf VT < 0 Then
VR = VR - 1 - Int(Abs(VT) / VM)
VT = VM - (Abs(VT) Mod VM)
End If
ValeurTest = VT 'Change la valeur test
ValeurRetour = VR 'Change la valeur retour
End Sub


(J'ai utilisé une sub et pas une fonction pour une bonne raison)


Cette DLL est dans "C:\WINDOWS\system32"


Dans un projet Control ActiveX je tape le code suivant :


Private Declare Sub ADTT Lib "MyCommonSubs" (ByRef a As Variant, _
ByRef b As Variant, ByVal c As Variant)


'-------------------------------------------------------------------------------------
'Calcule l'heure et crée une chaine la contenant selon le format ##:##:##
Private Function BuildHour() As String
ADTT m_Sec, m_Min, m_SMax
ADTT m_Min, m_Heu, m_MMax
'Construit la chaine
BuildHour = Format(m_Heu, "00") + ":" + Format(m_Min, "00") + ":" + _
Format(m_Sec, "00")
End Function


Quand je lance le Controle ActiveX il me dit :


Run-time error '453':
Can't find DLL entry point ADTT in MyCommonSubs


Je comprends pas pourquoi et je suis au bord de la crise de nerf !
Aidez-moi svp !
(Je devellope en VB6 PAS EN .NET).


Merci d'avance...

5 réponses

NHenry Messages postés 15030 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 26 novembre 2022 157
1 févr. 2005 à 13:06
VB permet de créé des DLL ActiveX à charger avec CreateObject, et pas des DLL à déclarer avec DECLARE...

NH
3
Thomas Anderson Messages postés 8 Date d'inscription lundi 17 janvier 2005 Statut Membre Dernière intervention 1 février 2005
1 févr. 2005 à 13:36
Merci beaucoup...


On m'a dit que l'on pouvair éviter d'utiliser une DLL avec CreateObjet (même si ça à résolu mon problème ) est-ce vrai ?
0
Thomas Anderson Messages postés 8 Date d'inscription lundi 17 janvier 2005 Statut Membre Dernière intervention 1 février 2005
1 févr. 2005 à 13:39
Au fait, comment ça se fait que l'on utilise Declare pour l'API Windows alors ?
0
mrdep1978 Messages postés 402 Date d'inscription jeudi 25 novembre 2004 Statut Membre Dernière intervention 7 juin 2009 6
1 févr. 2005 à 14:51
Ce sont des DLL en C++ et pas en VB.
0

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

Posez votre question
Thomas Anderson Messages postés 8 Date d'inscription lundi 17 janvier 2005 Statut Membre Dernière intervention 1 février 2005
1 févr. 2005 à 16:33
Ok ! Merci à tous de ces explications...
0