thkiller
Messages postés168Date d'inscriptionmercredi 24 mai 2006StatutMembreDernière intervention11 septembre 2007
-
28 juin 2006 à 13:33
thkiller
Messages postés168Date d'inscriptionmercredi 24 mai 2006StatutMembreDernière intervention11 septembre 2007
-
1 juil. 2006 à 08:56
Bonjour à tous,
J'ais actuellement un programme qui fonctionne sous windows 2000, en effet je l'ai compiler avec vb6 sur ce même pc, mais le pb survient lorsque j'execute ce même programme sur un PC windows XP.
Y à-t-il une différence de compilation de visual basic sur 2000 et sur XP ?
ps: parce que mon problème ne peut venir que de la (enfin je pense........).
econs
Messages postés4030Date d'inscriptionmardi 13 mai 2003StatutMembreDernière intervention23 décembre 200824 28 juin 2006 à 14:00
Salut,
Il y aura surtout un problème si tu t'es contenté de recopier le .exe sur l'autre machine.
As-tu déployé un package d'install (un setup.exe) pour installer ton programme sur l'autre PC ?
Si non, ben ... il faut.
thkiller
Messages postés168Date d'inscriptionmercredi 24 mai 2006StatutMembreDernière intervention11 septembre 2007 28 juin 2006 à 14:21
ben le truck c'est que l'application est déjà existante avec un setup, elle à été développé sur la PC 2000 puis installer sur le PC XP via le setup d'accord....
Et moi je n'ai fait qu'une petite modif de l'exe, de plus pour d'autre prog que celui la la recopie de l'exe fonctionne alors je me demande koi !!
et ce n'est pas moi qui est développé l'application ni le setup donc dur dur pour reconstruire un setup sans le fichier qui a permis de créer l'ancien.
thkiller
Messages postés168Date d'inscriptionmercredi 24 mai 2006StatutMembreDernière intervention11 septembre 2007 28 juin 2006 à 15:38
En fait c'est pas vraiment une erreur mais lorsque le prog tourne sur 2000 ca fonctionne + ou - bien (oui il y à une erreur pendant la lecture d'un fichier à environ 60 %, je ne sais pas trops c'est un message d'erreur, voir code source fonction ci-dessous) et sous XP j'ais pas d'erreur mais le prog fonctionne pas !!!
Public Sub Lecture_WW(Fichier As String)
Dim liste_champs As New Collection
Dim tab_champs() As String
Dim car, ligne As String
Dim champ As Variant
Dim nb_ligne As Integer
Dim nb_separateur As Integer
Dim taille_fichier, car_lu As Double
Dim separateur As String
Set Liste_MAJ_WW = New Collection
separateur = conf.separateurWW
'Exit Sub ' modifier le 27 juin 2006 par Calderon Nicolas stagiaire BTS IRIS
On Error GoTo fermeture taille_fichier FileLen(Fichier): car_lu 0
Open Fichier For Input As #2
FrmXl.status = "extraction de World Writer"
FrmXl.status.Refresh
While Not (EOF(2)) car "": ligne ""
nb_separateur = 0
car = Input(1, #2)
While car <> Chr(10) And Not (EOF(2))
car_lu = car_lu + 1
ligne = ligne + car
car = Input(1, #2) If car separateur Then nb_separateur nb_separateur + 1
Wend
FrmXl.ProgressBar1.Value = car_lu / taille_fichier * 100
FrmXl.Frame1.Caption = Int(FrmXl.ProgressBar1.Value) & "%"
If nb_ligne Mod 40 = 0 Then FrmXl.Frame1.Refresh
If nb_separateur > 2 Then
tab_champs = VBA.Split(ligne, separateur)
Set liste_champs = New Collection
For Each champ In tab_champs
liste_champs.Add Trim(champ)
Next
Liste_MAJ_WW.Add liste_champs, liste_champs.item(3) & liste_champs.item(1)
End If
Wend
Close #2
Exit Sub
fermeture:
Close #2
MsgBox "Erreur de lecture du fichier :" & vbCrLf & err.Description, vbInformation, "Erreur"
Exit Sub
End Sub
crogiez
Messages postés86Date d'inscriptionlundi 8 décembre 2003StatutMembreDernière intervention27 décembre 2011 30 juin 2006 à 10:11
bizarre
tu utilises des fonctions obsoletes
faut utiliser les objets FileSystemObjet
je ferais plutôt comme çà
Public Sub Lecture_WW(Fichier As String)
Dim liste_champs As New Collection
Dim tab_champs() As String
Dim car, ligne As String
Dim champ As Variant
Dim nb_ligne As Integer
Dim nb_separateur As Integer
Dim taille_fichier, car_lu As Double
Dim separateur As String
'declaration de l'objet FileSystemObject
'je te laisse trouver la syntaxe exacte
'set FSO = ...
Set Liste_MAJ_WW = New Collection
separateur = conf.separateurWW
'Exit Sub ' modifier le 27 juin 2006 par Calderon Nicolas stagiaire BTS IRIS
On Error GoTo fermeture
taille_fichier FileLen(Fichier): car_lu 0
'Open Fichier For Input As #2
'remplacez la ligne précédente par
'création objet correpondant à ton fichier
'set ofichier = FSO.file(fichier)
'ouverture du fichier
'ofichier.open
FrmXl.status = "extraction de World Writer"
FrmXl.status.Refresh
'on dirait que tu cherches les lignes chr(10)+chr(13)
'pour çà utilisez :
'finligne=""
'while not(ofichier.endofstream)
'ofchier.lineinput
'ligne=ligne+finligne
'puis recherchez si separateur est dedans par position InStr()
'while Instr(ligne, separateur<>0)
'tu obtiens lignesanssep et finligne
'tu traites lignesanssep par un sous prog
'dans un 1er temps tu ne fais que afficher les lignessanssep
'par msgbox, pour vérifier
'dans un 2eme temps tu créé sous prog qui traite lignesanssep
'debligne
'tu cherches si ligne suivante
'si not EOF debligne=finligne+ligne suivante
'fin de lecture
While Not (EOF(2)) car "": ligne ""
nb_separateur = 0
car = Input(1, #2)
While car <> Chr(10) And Not (EOF(2))
car_lu = car_lu + 1
ligne = ligne + car
car = Input(1, #2) If car separateur Then nb_separateur nb_separateur + 1
Wend
FrmXl.ProgressBar1.Value = car_lu / taille_fichier * 100
FrmXl.Frame1.Caption = Int(FrmXl.ProgressBar1.Value) & "%"
If nb_ligne Mod 40 = 0 Then FrmXl.Frame1.Refresh
If nb_separateur > 2 Then
tab_champs = VBA.Split(ligne, separateur)
Set liste_champs = New Collection
For Each champ In tab_champs
liste_champs.Add Trim(champ)
Next
Liste_MAJ_WW.Add liste_champs, liste_champs.item(3) & liste_champs.item(1)
End If
Wend
Close #2
Exit Sub
fermeture:
Close #2
MsgBox "Erreur de lecture du fichier :" & vbCrLf & err.Description, vbInformation, "Erreur"
Exit Sub
End Sub
thkiller
Messages postés168Date d'inscriptionmercredi 24 mai 2006StatutMembreDernière intervention11 septembre 2007 1 juil. 2006 à 08:56
et bien comme je l'ai dis ce n'est pas moi qui à fait le prog mais j'ai juste reprit le source pour voir pk le logiciel ne fonctinnai plus !! voila !!
Merci quand même.