![]() |
| Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé. | |||||||
|
|||||||
| Runtime Forum destiné à recevoir toutes vos questions concernant le Runtime (empaquetage, déploiement...) |
![]() |
|
|
Outils de la discussion |
|
|
#1 (permalink) | |
|
Membre éprouvé
![]() Date d'inscription: novembre 2006
Âge: 45
Messages: 416
|
Bonjour à tous,
J'utilise le code de la FAQ pour contrôler les références d'une appli tournant en runtime 2007.(Lister, ajouter, supprimer). Executé en mde ou sur un poste en runtime (xp ou vista) l'ajout me génère une erreur Citation:
La liste peut aussi me générer ce genre d'erreur (sur le poste xp). La compilation ne donne pas d'erreur. Code :
Private Sub cmdListerReferences_Click() GetReferences End Sub Function GetReferences() Dim Ref As Reference On Error GoTo Err_GetReferences For Each Ref In Application.References MsgBox "Référence : " & Ref.Name & " - Version : " & Ref.Major & "." _ & Ref.Minor & " - FullPath : " & Ref.FullPath, , "xxx" Debug.Print "Réf : " & Ref.Name & " - Version : " & Ref.Major & "." _ & Ref.Minor & " - FullPath : " & Ref.FullPath Next Ref Exit_GetReferences: Exit Function Err_GetReferences: MsgBox "Erreur Form_frmAccueil_GetReferences n°: " & Err.Number & vbCrLf & Err.Description, , "xxx" Resume Exit_GetReferences End Function Private Sub cmdSupprimerReference_Click() SupprimerReferences End Sub Public Sub SupprimerReferences() Dim Ref As Reference, NomRef As String On Error GoTo Err_SupprimerReferences NomRef = InputBox("Nom de la référence", "xxx - Suppression d'une référence") Debug.Print "Nom "; NomRef If ExisteReference(NomRef) Then Set Ref = References(NomRef) References.Remove Ref MsgBox "Référence supprimée", , "xxx - Suppression d'une référence" Else MsgBox "La référence n'a pas été trouvée", , "xxx - Suppression d'une référence" End If MsgBox "Il y a " & Application.References.Count & " références cochées.", , "xxx" For Each Ref In References If Ref.IsBroken Then MsgBox "GUID des références rompues:" & Ref.GUID, , "xxx" End If Next Ref Exit_SupprimerReferences: Exit Sub Err_SupprimerReferences: MsgBox "Erreur Form_frmAccueil_SupprimerReferences n°: " & Err.Number & vbCrLf & Err.Description, , "xxx" Resume Exit_SupprimerReferences End Sub Private Function ExisteReference(NomRef As String) As Boolean Dim Ref As Reference ExisteReference = False For Each Ref In Application.References If Ref.Name = NomRef Then ExisteReference = True End If Next Ref End Function Private Sub cmdAjouterReferences_Click() On Error GoTo Err_cmdAjouterReferences_Click AjouterReferences Exit_cmdAjouterReferences_Click: Exit Sub Err_cmdAjouterReferences_Click: MsgBox "Erreur Form_frmAccueil_cmdAjouterReferences_Click n°: " & Err.Number & vbCrLf & Err.Description, , "xxx" Resume Exit_cmdAjouterReferences_Click End Sub Private Sub AjouterReferences() Dim CheminReference As String CheminReference = OuvrirDialogueFichier() Debug.Print "CheminReference " & CheminReference AjouterReference (CheminReference) 'AjouterReference ("C:\Program Files\Microsoft Office\Office12\VVIEWER.DLL") 'AjouterReference ("C:\Windows\system32\scrrun.dll") End Sub Private Sub AjouterReference(CheminRef As String) References.AddFromFile (CheminRef) MsgBox "Référence ajoutée : " & CheminRef, , "xxx" End Sub Merci de votre attention
__________________
Un seul conseil: la règle des 3S. |
|
|
|
|
|
|
#2 (permalink) |
|
Expert Confirmé Sénior
![]() |
salut,
petite astuce, plus rapide pour les references, tu peux voir la fonction isborken normalement, ca t'évite de parcourir toute les références de ton projet. Quant à la fonction OuvrirDialogueFichier() le code vérifie-t-il que le retour n'est pas null (clic sur annuler)... ?
__________________
Piou-Piou Poussin Developpeur Pas de question technique par MP, je ne réponds pas ![]() Mon perso ? Une vraie brute |
|
|
|
|
|
#3 (permalink) |
|
Membre éprouvé
![]() Date d'inscription: novembre 2006
Âge: 45
Messages: 416
|
Bonjour,
Vu pour isBroken, ça donne cela: Code :
Private Sub cmdBroken_Click() Dim Ref As Reference, cptRef As Long cptRef = 0 For Each Ref In References If Ref.IsBroken Then MsgBox "GUID des références rompues:" & Ref.Guid, , "xxx" Else cptRef = cptRef + 1 End If Next Ref MsgBox "non rompues : " & cptRef, , "xxx - Références rompues" End Sub
__________________
Un seul conseil: la règle des 3S. |
|
|
|
|
|
#4 (permalink) |
|
Expert Confirmé Sénior
![]() |
oki,
en pas à pas, sais-tu d'où l'erreur surgit inopinément ?
__________________
Piou-Piou Poussin Developpeur Pas de question technique par MP, je ne réponds pas ![]() Mon perso ? Une vraie brute |
|
|
|
|
|
#6 (permalink) |
|
Expert Confirmé Sénior
![]() |
d'accord,
je ne suis pas spécialiste pour la partie runtime. Mais si c'est pas trop contraignant tu peux faire des debug.print tout du long (ligne par ligne ou instruction par instruiction) pour voir à jusqu'où le code tourne correctement.
__________________
Piou-Piou Poussin Developpeur Pas de question technique par MP, je ne réponds pas ![]() Mon perso ? Une vraie brute |
|
|
|
|
|
#8 (permalink) | ||
|
Membre éprouvé
![]() Date d'inscription: novembre 2006
Âge: 45
Messages: 416
|
Le package généré avec le mdb au lieu du mde fonctionne sur le poste en runtime.
Il s'agit donc d'un pb lié à la compilation mde. C'est une appli de test qui ne comporte qu'un formulaire et les boutons pour lancer les fonctions: lister, creer, supprimer, lister les ref rompues. Plus les modules pour la fonction OuvrirDialogueFichier. Tout est en Option Explicit. Aucune erreur à la compilation. Peut-il s'agir d'un pb de référence? Je rappelle l'erreur donnée par la gestion d'erreur: Citation:
J'effectue mes tests en ajoutant/supprimant CDO (cdosys.dll) ou MSForms (FM20.dll). Merci de votre aide. Je pense que si je peux corriger ce pb "simple" j'aurai des clés pour la kyrielle d'autre pb qui se présente à moi! EDIT: j'ai viré tout ce que je pouvais (OuvrirDialogueFichier et modules associés), j'ai mis le chemein en dur Citation:
Je suis maudit ou quoi!
__________________
Un seul conseil: la règle des 3S. Dernière modification par tAKAmAkA ; 16/01/2008 à 16h32 |
||
|
|
|
![]() |
![]() |
||
[2007]Pb ajout référence par le code
|
||
Offres d'
emploi informatique
sur Lesjeudis.com
|
| Outils de la discussion | |
|
|