Help

Seth77 Messages postés 572 Date d'inscription mardi 30 avril 2002 Statut Membre Dernière intervention 4 mai 2020 - 1 juin 2005 à 22:56
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 - 2 juin 2005 à 20:37
Pourquoi ca ne marche pas !!!





If (Right(path, 1) = "") Then


FileName$ = Dir(StrRep & "*." & TAB_EXT(j), vbHidden)

Else


FileName$ = Dir(StrRep & "\*." & TAB_EXT(j), vbHidden)

End If



Do While FileName$ <> ""

DoEvents


Add_Fichier StrRep, FileName


FileName$ = Dir

Loop



erreur au niveau de
FileName$ = Dir....a partir du Doevents la valeur du dir change a chaque ligne !!!!




Herve

13 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
1 juin 2005 à 23:47
Salut
- Parce que tu testes la présence d'un \ à la fin de 'path' et que tu utilises StrRep ensuite.
- Peut-être parce que tu utilises un coup FileName, un coup FileName$
- Qu'est ce qui ne marche pas ?
- As-tu fait un stop sur le Do pour voir ce qu'il y a dans FileName$ après le 1er Dir ?
- Combien vaut le 'j' ? est-ce que ça a un rapport avec le problème

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
0
Seth77 Messages postés 572 Date d'inscription mardi 30 avril 2002 Statut Membre Dernière intervention 4 mai 2020 1
1 juin 2005 à 23:55
ok :

- je teste le "" pour eviter d avoir comme repertoire : c:\test*.exe...

- j ai essaye avec filename$ ca ne change pas !

- ce qui ne marche pas.... c qu il me fait une erreur a FileName$ = Dir .

- oui j ai mis un point d arret a do ..et la valeur de filename est
bonne....en faisant du pas a pas, la valeur de Dir change ...ce qui est
vraiment etrange ! c en arrivant a
FileName$ = Dir : Dir vaut ""! donc erreur !


- l ensemeble de code est dans une boucle for ou j augmente !


Herve
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
2 juin 2005 à 01:19
Oui cela m'intrigue aussi ton test sur Right(Path....... et ensuite un Dir(StrRep......
Cela devrai être Dir(Path & ...........
C'est normal que dir devienne "" puisque tu fais une boucle, normalement quand FileName = "" tu ne rentres plus dans boucle.
Sinon y'a pas de raison que cela ne tourne pas
que fais-tu dans Add_Fichier StrRep, FileName ?

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
Seth77 Messages postés 572 Date d'inscription mardi 30 avril 2002 Statut Membre Dernière intervention 4 mai 2020 1
2 juin 2005 à 01:43
pourquoi cela t intrigue ?...si il n y a pas de "" a la fin du repertoire ca bug.

j ai essaye en mettant en commentaire la fonction Add_Fichier...cela ne change rien.



pour le moment j aicontourne le probleme en passant par un filebox.




Herve
0

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

Posez votre question
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
2 juin 2005 à 10:30
Ce n'est pas le fait que tu testes le "" qui m'intrigue. c'est qu'une fois tu le fais sur Path et aprés tu utilise StrRep

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
Seth77 Messages postés 572 Date d'inscription mardi 30 avril 2002 Statut Membre Dernière intervention 4 mai 2020 1
2 juin 2005 à 13:07
Ahh oui c vrai...mauvais copier/coller !

mais c pas cela le probleme !

Herve
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
2 juin 2005 à 18:00
C'est quoi le message d'erreur que te met VB ?
Pour ma part j'ai fait un test à l'identique sauf Add_Fichier StrRep, FileName

et je n'ai pas eu de problème particulier ......
J'ai même fais un test avec Until et While même résultat .....tout est bon.

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
Seth77 Messages postés 572 Date d'inscription mardi 30 avril 2002 Statut Membre Dernière intervention 4 mai 2020 1
2 juin 2005 à 18:28
Je sais cela marche bien...je l utilise plusieurs fois dans mon projet.



sinon le message d erreur est "Argument ou appel de procedure incorrect"

Herve
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
2 juin 2005 à 18:50
Fais un essais avec Add_Fichier StrRep, FileName en commentaire pour voir

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
Seth77 Messages postés 572 Date d'inscription mardi 30 avril 2002 Statut Membre Dernière intervention 4 mai 2020 1
2 juin 2005 à 18:55
oui ca marche ..............

c bizarre !


Herve
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
2 juin 2005 à 19:47
Donnes le code de cette sub pour voir

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
Seth77 Messages postés 572 Date d'inscription mardi 30 avril 2002 Statut Membre Dernière intervention 4 mai 2020 1
2 juin 2005 à 19:52
voila le code .............

mais c bizarre ca plante meme avant l arrivee a la fonction !











Public Function Add_Wallpaper(ByVal Rep As String, ByVal Fichier As String, IdWall As Long) As Boolean

Dim REC_Wall As Recordset

Dim StrRep As String, StrFichier As String, TmpExt As String

Dim TmpRep As Long



StrRep = Rep

StrFichier = Fichier

IdWall = -1



If (StrRep "" Or StrFichier "") Then

Add_Wallpaper = -1

Exit Function

End If



If (Right(StrRep, 1) "") Then StrRep Left(StrRep, Len(StrRep) - 1)



Set REC_Wall = DB_WALL.OpenRecordset(DB_STR_WALL, dbOpenDynaset)



If (REC_Wall.RecordCount > 0) Then

REC_Wall.MoveLast

REC_Wall.MoveFirst

End If



TmpRep = GetRep(StrRep)



If (Wallpaper_Exist(Rep, Fichier) <> -1) Then

IdWall = REC_Wall!id

Add_Wallpaper = False

Else

REC_Wall.AddNew



REC_Wall!Date_Ajout = Date & " " & time

REC_Wall!Nom = StrFichier

REC_Wall!Repertoire = TmpRep



TmpExt = UCase(Right(StrFichier, Len(StrFichier) - InStrRev(StrFichier, ".")))

REC_Wall!Extension = Get_Ext(TmpExt)



REC_Wall!Infos = -1

If (TmpExt "JPG" Or TmpExt "JIF" Or TmpExt = "JPE" Or TmpExt = "JPEG") Then

Dim TmpJPG As clsJPEGInfo

Set TmpJPG = New clsJPEGInfo



TmpJPG.ReadFile CheckPath(Rep, Fichier)


REC_Wall!Infos = Get_Infos(TmpJPG.Width, TmpJPG.Height, TmpJPG.BitDepth)



Set TmpJPG = Nothing

End If



REC_Wall!Taille = FileLen(CheckPath(Rep, Fichier))

REC_Wall!Date_Utilisation = Null

IdWall = REC_Wall!id

REC_Wall.Update

Add_Wallpaper = True

End If



REC_Wall.Close

End Function




Herve
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
2 juin 2005 à 20:37
Vraiment je ne vois pas du tout d'ou cela peu provenir désolé.....

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
Rejoignez-nous