Ne cherchez plus, j'ai trouvé la réponse à ma question.
Ma DLL en appelle en fait une autre qui était inaccessible dans les chemins par défaut. Tout est rentré dans l'ordre depuis que j'ai copié la DLL incriminée dans C:\WinNT\System32. Le message d'erreur ne mettait pas en évidence l'origine exacte du problème, c'est-à-dire la DLL concernée. On a tendance à se focaliser sur celle que l'on spécifie dans Declare.

A+
Guillaume Audirac








[EMAIL PROTECTED]

2005-02-21 13:56
Veuillez répondre à prog

       
        Pour :        prog@fr.openoffice.org
        cc :        (ccc : Guillaume Audirac/CFR/SC/PHILIPS)
        Objet :        [prog] declare DLL et runtime error
        Categorie:        




Bonjour,


Ayant besoin d'utiliser des fonctions de DLL, je fais un usage abusif de l'instruction Declare. Malheureusement, je rencontre une difficulté pour une DLL en particulier, et j'ai bien du mal à interpréter le message d'erreur ainsi qu'à trouver une méthode pour affiner ma compréhension du problème.


J'ai réduit mon programme à ceci :


Option Explicit

Declare Function VeeInitDll Lib "VeeGenApi.dll" () As Integer

Sub Main

       Call VeeInitDll()

End Sub


J'ai mis la DLL "VeeGenApi.dll" dans C:\WinNT\System32 (sous Win2000), j'ai essayé aussi dans le répertoire contenant mon fichier Calc, et également avec les chemins absolus dans l'instruction Declare. Mais rien n'y fait.

A l'exécution de main, l'erreur intervient sur la ligne "Call VeeInitDll()" : Runtime error BASIC / Erreur lors du chargement d'un fichier DLL.


Auriez-vous une piste ?

Merci.

Guillaume Audirac

Répondre à