bonjour :)
Je vais tenter d'expliquer mon soucis le plus clairement possible hihi
J'ai réalisé une application donc les libellées des boutons, textes, etc sont recupéré à partir d'un dll "Langue.dll"
Voila à quoi ressemble cette dll :
Public Function Lib(x As Integer) As String Dim Libelle As String Select Case x Case 101 Libelle = "&Fichier" Case 102 Libelle = "Rechercher" Case 103 Libelle = "Supprimer" Case Else Libelle = "" End Select
Lib = Libelle
End Function |
J'utilise cette dll donc dans mon application principale (dans les references de mon projet, elle se trouve bien presente)
voila comment j'ai defini mon appel (Translate etant le .cls de mon projet de dll)
| Public Language As New Translate |
ensuite, dans mon projet d'application principal, je remplis mes differents libellé de la facon suivante :
Fichier.Caption = Language.Lib(101) Rechercher.Caption = Language.Lib(102) Annuler.Caption = Language.Lib(103) |
Jusque la, rien à signaler, cela marche bien que ce soit en lancant l'appli via vb ou en creant l'exe de mon appli.
Cependant, si j'ai fait une dll de ce type pour la langue, c'est qu'une version anglaise est prévue. Je fais donc tout betement un copier/coller de mon projet dll, qui recoit le meme nom (mais dans un rep different bien sur).
Voila donc à quoi ressemble ma seconde dll langue
Public Function Lib(x As Integer) As String Dim Libelle As String Select Case x Case 101 Libelle = "&File" Case 102 Libelle = "Search" Case 103 Libelle = "Cancel modifications" Case Else Libelle = "" End Select
Lib = Libelle
End Function |
Au niveau de mon appli principal, aucun changement n'est effectué.
Je remplace donc tout betement ma dll francais par ma dll anglaise. Quand je lance l'appli via vb, aucun pb, j'ai bien mes libellés en anglais.
Cependant, quand je crée l'exe de mon appli, j'ai l'erreure suivante qui s'affiche : "Erreur d'execution 430. La classe ne gere pas Automation ou l'interface attendue"
Donc en résumé : J'ai 2 dll, une francaise et une anglaise. J'utilise la dll francaise, tout va bien en execution via vb ou en creant l'exe de mon appli. Je met la dll anglaise en place et la, via vb pas de soucis, mais via l'exe cela genere une erreur
Pourriez vous m'eclairer et m'aider si possible, je suis vraiment dans une impasse et je trouve pas la solution :/
merci d'avance